結果
問題 |
No.458 異なる素数の和
|
ユーザー |
![]() |
提出日時 | 2020-01-01 23:02:53 |
言語 | PyPy3 (7.3.15) |
結果 |
WA
|
実行時間 | - |
コード長 | 622 bytes |
コンパイル時間 | 209 ms |
コンパイル使用メモリ | 82,372 KB |
実行使用メモリ | 64,980 KB |
最終ジャッジ日時 | 2024-11-22 17:18:34 |
合計ジャッジ時間 | 8,059 ms |
ジャッジサーバーID (参考情報) |
judge2 / judge3 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | WA * 3 |
other | WA * 28 |
ソースコード
import sys sys.setrecursionlimit(10 ** 6) def II(): return int(sys.stdin.readline()) def main(): prime=[0,1]*10005 prime[1]=0 prime[2]=1 for x in range(3,20001): if x**2>20000:break if prime[x]: for y in range(x**2,20001,x): prime[y]=0 pp=[] for p in range(2,20001): if prime[p]:pp.append(p) cntpri=[-1]*20001 cntpri[0]=0 s=0 for p in pp: for x in range(s+1): if cntpri[x]==-1:continue if x+p>20000:break cntpri[x+p]=max(cntpri[x+p],cntpri[x]+1) s+=p print(II()) main()