結果
問題 | No.2192 平方数の下14桁 |
ユーザー |
![]() |
提出日時 | 2022-11-14 23:49:58 |
言語 | PyPy3 (7.3.15) |
結果 |
AC
|
実行時間 | 182 ms / 2,000 ms |
コード長 | 770 bytes |
コンパイル時間 | 283 ms |
コンパイル使用メモリ | 81,920 KB |
実行使用メモリ | 57,984 KB |
最終ジャッジ日時 | 2024-09-16 03:40:37 |
合計ジャッジ時間 | 5,084 ms |
ジャッジサーバーID (参考情報) |
judge3 / judge6 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
other | AC * 44 |
ソースコード
mod = int(input())r = int(input())if r == 0:print("YES")exit()def f(pp):global mod, rans = Truee1, e2 = 0, 0rr = rwhile rr % pp == 0:rr //= ppe1 += 1while mod % pp == 0:mod //= ppe2 += 1e, ck = min(e1, e2), rfor _ in range(e):ck //= ppans &= e == e2 or (e & 1) == 0if pp == 2:v2 = min(3, e2)v22 = 1 << v2ch = e == e2for i in range(v22):ch |= (i * i - ck) % v22 == 0ans &= chelse:ans &= e == e2 or pow(ck, pp >> 1, pp) == 1return anspp, ans = 2, Truewhile pp * pp <= mod:if mod % pp == 0:ans &= f(pp)pp += 1if mod != 1:ans &= f(mod)print("YNEOS"[not ans::2])