結果
問題 |
No.371 ぼく悪いプライムじゃないよ
|
ユーザー |
![]() |
提出日時 | 2016-12-01 11:02:03 |
言語 | C++11(廃止可能性あり) (gcc 13.3.0) |
結果 |
WA
|
実行時間 | - |
コード長 | 784 bytes |
コンパイル時間 | 605 ms |
コンパイル使用メモリ | 69,352 KB |
実行使用メモリ | 13,640 KB |
最終ジャッジ日時 | 2024-11-27 15:32:25 |
合計ジャッジ時間 | 34,038 ms |
ジャッジサーバーID (参考情報) |
judge3 / judge5 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 WA * 1 |
other | AC * 16 WA * 11 TLE * 15 |
ソースコード
#include <cmath> #include <vector> #include <iostream> #include <algorithm> using namespace std; vector<int> Eratosthenes(int n){ bool dp[n]; for(int i = 0; i < n; i++) dp[i] = false; dp[0] = dp[1] = true; vector<int> prime; for(int i = 2; i < n; i++){ if(dp[i]) continue; prime.push_back(i); for(int j = i * i; j < n; j += i){ dp[j] = true; } } return prime; } int main(){ long long l, h; cin >> l >> h; vector<int> prime = Eratosthenes(10000); long long ans; long long so = -1; if(l % 2 == 0){ l++; } for(long long i = l; i <= h; i += 2){ for(long long j = 0; j < prime.size(); j++){ if(i % prime[j] == 0){ if(i == prime[j]) break; if(so <= j){ ans = i; so = j; } break; } } } cout << ans << endl; return 0; }