結果
| 問題 |
No.8030 ミラー・ラビン素数判定法のテスト
|
| ユーザー |
|
| 提出日時 | 2021-07-27 21:53:51 |
| 言語 | PyPy3 (7.3.15) |
| 結果 |
WA
|
| 実行時間 | - |
| コード長 | 551 bytes |
| コンパイル時間 | 372 ms |
| コンパイル使用メモリ | 82,012 KB |
| 実行使用メモリ | 77,728 KB |
| 最終ジャッジ日時 | 2024-07-23 19:06:47 |
| 合計ジャッジ時間 | 3,342 ms |
|
ジャッジサーバーID (参考情報) |
judge1 / judge4 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| other | AC * 4 WA * 6 |
ソースコード
def enumerate_primes(n: int) -> list:
"""エラトステネスの篩 計算量O(NloglogN)
https://mikan-alpha.hatenablog.com/entry/2020/07/29/210342"""
assert n >= 1
isp = [True] * (n+1 >> 1)
for i in range(3, int(n**0.5)+1, 2):
if isp[i >> 1]:
isp[i*i >> 1::i] = [False] * int(((n-1 >> 1)-(i*i >> 1))//i+1)
return [2]*int(n != 1) + [(i << 1)+1 for i in range(1, n+1 >> 1) if isp[i]]
primes = enumerate_primes(10**5)
n = int(input())
for i in range(n):
x = int(input())
print(x, int(x in primes))