結果
| 問題 |
No.7 プライムナンバーゲーム
|
| コンテスト | |
| ユーザー |
|
| 提出日時 | 2025-04-22 01:51:41 |
| 言語 | PyPy3 (7.3.15) |
| 結果 |
AC
|
| 実行時間 | 169 ms / 5,000 ms |
| コード長 | 783 bytes |
| コンパイル時間 | 381 ms |
| コンパイル使用メモリ | 81,904 KB |
| 実行使用メモリ | 66,364 KB |
| 最終ジャッジ日時 | 2025-04-22 01:51:45 |
| 合計ジャッジ時間 | 3,027 ms |
|
ジャッジサーバーID (参考情報) |
judge4 / judge2 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| other | AC * 17 |
ソースコード
N=int(input())
if N == 2 or N == 3:
print("Lose")
exit()
lose_num=set()
lose_num.add(2)
lose_num.add(3)
def Sieve_of_Eratosthenes(num):
number_list = [[i,True] for i in range(0,num+1)]
prime_list = []
for i, res in number_list[2:]:
if res == True:
for j in range(i*i, num+1, i):
number_list[j][1] = False
if i > num**(1/2):
break
for num,i in number_list:
if num >= 2 and i == True:
prime_list.append(num)
return prime_list
prime_set=set(Sieve_of_Eratosthenes(N+10))
for i in range(4,N+1):
found=False
for j in lose_num:
if i-j in prime_set:
found=True
if not found:
lose_num.add(i)
print("Win" if i not in lose_num else "Lose")