結果
| 問題 | No.7 プライムナンバーゲーム |
| コンテスト | |
| ユーザー |
nsd_fb
|
| 提出日時 | 2015-02-19 04:21:11 |
| 言語 | PyPy2 (7.3.15) |
| 結果 |
RE
|
| 実行時間 | - |
| コード長 | 744 bytes |
| 記録 | |
| コンパイル時間 | 222 ms |
| コンパイル使用メモリ | 77,220 KB |
| 最終ジャッジ日時 | 2025-12-03 14:00:06 |
|
ジャッジサーバーID (参考情報) |
judge1 / judge1 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| other | AC * 5 RE * 12 |
ソースコード
import functools
def memoize(obj):
cache = obj.cache = {}
@functools.wraps(obj)
def memoizer(*args, **kwargs):
if args not in cache:
cache[args] = obj(*args, **kwargs)
return cache[args]
return memoizer
def sieve(n):
res = []
is_prime = [True] * (n + 1)
for i in xrange(2, n + 1):
if is_prime[i]:
res.append(i)
for j in xrange(i * i, n + 1, i):
is_prime[j] = False
return res
@memoize
def win(n):
if n <= 1:
return True
for p in primes:
if p > n:
break
if not win(n - p):
return True
return False
n = input()
primes = sieve(n)
print 'Win' if win(n) else 'Lose'
nsd_fb