結果
問題 | No.854 公平なりんご分配 |
ユーザー | 6soukiti29 |
提出日時 | 2019-07-27 18:53:47 |
言語 | Nim (2.0.2) |
結果 |
CE
(最新)
AC
(最初)
|
実行時間 | - |
コード長 | 1,144 bytes |
コンパイル時間 | 793 ms |
コンパイル使用メモリ | 64,524 KB |
最終ジャッジ日時 | 2024-07-02 11:09:02 |
合計ジャッジ時間 | 1,619 ms |
ジャッジサーバーID (参考情報) |
judge2 / judge1 |
(要ログイン)
コンパイルエラー時のメッセージ・ソースコードは、提出者また管理者しか表示できないようにしております。(リジャッジ後のコンパイルエラーは公開されます)
ただし、clay言語の場合は開発者のデバッグのため、公開されます。
ただし、clay言語の場合は開発者のデバッグのため、公開されます。
コンパイルメッセージ
/home/judge/data/code/Main.nim(35, 37) Error: type mismatch: got 'seq[int]' for 'map(split(readLine(stdin), {' ', '\t', '\v', '\r', '\n', '\f'}, -1), parseInt)' but expected 'tuple'
ソースコード
import sequtils,strutils,math,algorithm var N = stdin.readline.parseInt A = stdin.readline.split.map(parseInt) primes = newSeq[int](0) isnotprime : array[2005, bool] S : array[350, array[-1..100005, int]] for i in 2..2000: if isnotprime[i]: continue var j = i * 2 while j <= 2000: isnotprime[j] = true j += i primes.add(i) var Q = stdin.readline.parseInt P,L,R : int for i,a in A: var k = a for j,p in primes: S[j][i] = S[j][i - 1] if a == 0: S[j][i] += 300 continue while k mod p == 0: S[j][i] += 1 k = k div p for q in 0..<Q: (P, L, R) = stdin.readline.split.map(parseInt) L -= 2 R -= 1 var f : bool = true var s : array[304, int] for j in 0..303: s[j] = S[j][R] - S[j][L] for i,p in primes: while P mod p == 0: P = P div p s[i] -= 1 if s[i] < 0: f = false if P > 1: f = false if s[300] >= 300: f = true if f: echo "Yes" else: echo "NO"