結果
問題 | No.7 プライムナンバーゲーム |
ユーザー |
![]() |
提出日時 | 2019-12-02 16:16:53 |
言語 | Python3 (3.13.1 + numpy 2.2.1 + scipy 1.14.1) |
結果 |
AC
|
実行時間 | 585 ms / 5,000 ms |
コード長 | 762 bytes |
コンパイル時間 | 81 ms |
コンパイル使用メモリ | 12,416 KB |
実行使用メモリ | 11,136 KB |
最終ジャッジ日時 | 2024-10-01 16:28:38 |
合計ジャッジ時間 | 4,799 ms |
ジャッジサーバーID (参考情報) |
judge1 / judge3 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
other | AC * 17 |
ソースコード
N = int(input()) import math def prime(n): l = math.floor(n ** (1/2)) if n == 2: return 1 elif n == 1: return 0 for i in range(2,l + 1): if n % i == 0: return 0 return 1 N_list = [0] * (N + 1) N_list[2] = 0 N_list[3] = 0 #0 ... formar lose end = 0 p_list = [] for i in range(2,N + 1): if prime(i) == 1: p_list.append(i) if prime(N) == 1: p_list.remove(N) #make win-lose list N_list = [0] * (N+1) N_list[0] = -1 N_list[1] = -1 if N > 3: for i in range(4,N+1): for line in p_list: if i - line > 1: if N_list[i - line] == 0: N_list[i] = 1 break if N_list[N] == 1: print("Win") else: print("Lose")