結果
問題 | No.7 プライムナンバーゲーム |
ユーザー |
![]() |
提出日時 | 2015-05-24 07:32:29 |
言語 | C++11(廃止可能性あり) (gcc 13.3.0) |
結果 |
AC
|
実行時間 | 37 ms / 5,000 ms |
コード長 | 610 bytes |
コンパイル時間 | 564 ms |
コンパイル使用メモリ | 56,120 KB |
実行使用メモリ | 5,248 KB |
最終ジャッジ日時 | 2024-10-01 15:32:22 |
合計ジャッジ時間 | 1,456 ms |
ジャッジサーバーID (参考情報) |
judge3 / judge1 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
other | AC * 17 |
ソースコード
#include <iostream> using namespace std; bool prime[10001]; int worl[10001]; bool ans(int n){ if(worl[n]!=0){ if(worl[n]==1) return true; else return false; } if(n<2) return true; for(int i=0;i<n;i++){ if(prime[i]){ if(!ans(n-i)){ worl[n]=1; return true; } } } worl[n]=2; return false; } int main(){ int n; cin>>n; for(int i=0;i<=10000;i++){ prime[i]=true; worl[i]=0; } prime[0]=false; prime[1]=false; for(int i=2;i<=10000;i++){ if(prime[i]){ for(int j=2;i*j<=10000;j++) prime[i*j]=false; } } if(ans(n)) cout<<"Win"<<endl; else cout<<"Lose"<<endl; return 0; }