結果
問題 | No.7 プライムナンバーゲーム |
ユーザー |
|
提出日時 | 2016-02-23 10:14:42 |
言語 | C++11 (gcc 13.3.0) |
結果 |
AC
|
実行時間 | 40 ms / 5,000 ms |
コード長 | 630 bytes |
コンパイル時間 | 1,152 ms |
コンパイル使用メモリ | 158,936 KB |
実行使用メモリ | 5,248 KB |
最終ジャッジ日時 | 2024-10-01 15:40:56 |
合計ジャッジ時間 | 2,008 ms |
ジャッジサーバーID (参考情報) |
judge1 / judge5 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
other | AC * 17 |
ソースコード
#include <bits/stdc++.h> #include <chrono> using namespace std; int main(int argc, char** argv) { int MAX = 10001; int n; cin >> n; bool pr[MAX]; bool result[MAX]; for (int ii=1; ii<n+1; ++ii) { result[ii] = false; pr[ii] = true; } for (int ii=2; ii<sqrt(n); ++ii) { if (!pr[ii]) { continue; } for (int jj=0; ii*(jj+2)<n; ++jj) { pr[ ii*(jj+2) ] = false; } } result[0] = result[1] = true; for (int ii=2; ii<n+1; ++ii) { for (int jj=2; jj<=ii; ++jj) { if (pr[jj] && !result[ii-jj]) { result[ii] = true; break; } } } cout << (result[n] ? "Win" : "Lose") << endl; return 0; }