結果
| 問題 |
No.371 ぼく悪いプライムじゃないよ
|
| コンテスト | |
| ユーザー |
はむこ
|
| 提出日時 | 2017-02-08 11:05:50 |
| 言語 | C++11(廃止可能性あり) (gcc 13.3.0) |
| 結果 |
WA
|
| 実行時間 | - |
| コード長 | 861 bytes |
| コンパイル時間 | 1,846 ms |
| コンパイル使用メモリ | 165,504 KB |
| 実行使用メモリ | 13,644 KB |
| 最終ジャッジ日時 | 2024-12-25 16:28:33 |
| 合計ジャッジ時間 | 31,945 ms |
|
ジャッジサーバーID (参考情報) |
judge3 / judge4 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | WA * 4 |
| other | AC * 11 WA * 17 TLE * 14 |
ソースコード
#include <bits/stdc++.h>
using namespace std;
#define rep(i,n) for(long long i = 0; i < (long long)(n); i++)
using ll = long long; using vll = vector<ll>;
int main(void) {
ll l, h; cin >> l >> h;
vll primes;
vector<bool> is_prime(1e5+10, 1);
is_prime[0] = is_prime[1] = 0;
for (ll p = 2; p < is_prime.size(); p++) if (is_prime[p]) {
primes.push_back(p);
for (ll x = p; x < is_prime.size(); x += p)
is_prime[x] = 0;
}
reverse(primes.begin(), primes.end());
rep(pi, primes.size()) {
ll p = primes[pi];
for (ll x = h / p * p; x >= l; x -= p)
if (all_of(primes.begin() + pi + 1, primes.end(), [&](ll y){return x % y;})) {
// xがp以下の素数を持たない
cout << x << endl;
return 0;
}
}
return 0;
}
はむこ