結果
問題 | No.371 ぼく悪いプライムじゃないよ |
ユーザー | h_noson |
提出日時 | 2016-06-17 00:06:31 |
言語 | C++11 (gcc 11.4.0) |
結果 |
CE
(最新)
AC
(最初)
|
実行時間 | - |
コード長 | 962 bytes |
コンパイル時間 | 442 ms |
コンパイル使用メモリ | 59,220 KB |
最終ジャッジ日時 | 2024-11-14 19:45:20 |
合計ジャッジ時間 | 803 ms |
ジャッジサーバーID (参考情報) |
judge5 / judge2 |
(要ログイン)
コンパイルエラー時のメッセージ・ソースコードは、提出者また管理者しか表示できないようにしております。(リジャッジ後のコンパイルエラーは公開されます)
ただし、clay言語の場合は開発者のデバッグのため、公開されます。
ただし、clay言語の場合は開発者のデバッグのため、公開されます。
コンパイルメッセージ
main.cpp: In function ‘int main()’: main.cpp:34:18: error: ‘sqrt’ was not declared in this scope 34 | for (int x = sqrt(h); ; x--) { | ^~~~
ソースコード
#include <iostream> #include <vector> #include <map> #include <algorithm> using namespace std; #define REP(i,s,e) for (i = s; i <= e; i++) #define rep(i,n) REP (i,0,(int)(n)-1) #define RREP(i,s,e) for (i = s; i >= e; i--) #define rrep(i,n) RREP (i,(int)(n)-1,0) #define INF (int)1e8 #define MOD (int)(1e9+7) typedef long long ll; bool prime[100001]; ll least_prime(ll x) { for (int i = 2; i * i <= x; i++) if (x % i == 0) return i; return x; } int main(void) { for (int i = 2; i <= 100000; i++) prime[i] = true; for (int i = 2; i * i <= 100000; i++) if (prime[i]) { for (int j = i*2; j <= 100000; j+=i) prime[j] = false; } ll l, h; cin >> l >> h; for (int x = sqrt(h); ; x--) { if (prime[x]) for (ll y = h / x; y * x >= l; y--) { if (least_prime(y) >= x) { cout << y * x << endl; return 0; } } } return 0; }