結果
問題 | No.1330 Multiply or Divide |
ユーザー |
![]() |
提出日時 | 2021-01-11 04:50:50 |
言語 | PyPy3 (7.3.15) |
結果 |
WA
|
実行時間 | - |
コード長 | 787 bytes |
コンパイル時間 | 188 ms |
コンパイル使用メモリ | 82,412 KB |
実行使用メモリ | 104,332 KB |
最終ジャッジ日時 | 2024-11-21 08:50:07 |
合計ジャッジ時間 | 4,387 ms |
ジャッジサーバーID (参考情報) |
judge5 / judge3 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
other | AC * 37 WA * 9 |
ソースコード
import sys sys.setrecursionlimit(10**7) def I(): return int(sys.stdin.readline().rstrip()) def MI(): return map(int,sys.stdin.readline().rstrip().split()) def LI(): return list(map(int,sys.stdin.readline().rstrip().split())) def LI2(): return list(map(int,sys.stdin.readline().rstrip())) def S(): return sys.stdin.readline().rstrip() def LS(): return list(sys.stdin.readline().rstrip().split()) def LS2(): return list(sys.stdin.readline().rstrip()) N,M,P = MI() A = LI() max_A = max(A) ans = 1 X = (M+max_A-1)//max_A if X == 1: print(ans) exit() for i in range(N): a = A[i] if a % P == 0: while a % P == 0: a //= P A[i] = a max_A = max(A) if max_A == 1: print(-1) exit() x = 1 while x < X: x *= max_A ans += 1 print(ans)