結果
問題 | No.1657 Sum is Prime (Easy Version) |
ユーザー |
![]() |
提出日時 | 2021-08-01 20:21:43 |
言語 | C++17 (gcc 13.3.0 + boost 1.87.0) |
結果 |
WA
|
実行時間 | - |
コード長 | 3,313 bytes |
コンパイル時間 | 2,236 ms |
コンパイル使用メモリ | 220,160 KB |
最終ジャッジ日時 | 2025-01-23 13:22:01 |
ジャッジサーバーID (参考情報) |
judge4 / judge5 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 1 WA * 2 |
other | AC * 19 WA * 2 |
ソースコード
#pragma GCC optimize("Ofast")#pragma GCC optimize("unroll-loops")#pragma GCC optimize("inline")#include<bits/stdc++.h>using namespace std;struct MY_WRITER{char buf[1048576];int s;int e;MY_WRITER(){s = 0;e = 1048576;}~MY_WRITER(){if(s){fwrite_unlocked(buf, 1, s, stdout);}}};MY_WRITER MY_WRITER_VAR;void my_putchar_unlocked(int a){if(MY_WRITER_VAR.s == MY_WRITER_VAR.e){fwrite_unlocked(MY_WRITER_VAR.buf, 1, MY_WRITER_VAR.s, stdout);MY_WRITER_VAR.s = 0;}MY_WRITER_VAR.buf[MY_WRITER_VAR.s++] = a;}inline void wt_L(char a){my_putchar_unlocked(a);}inline void wt_L(long long x){int s=0;int m=0;char f[20];if(x<0){m=1;x=-x;}while(x){f[s++]=x%10;x/=10;}if(!s){f[s++]=0;}if(m){my_putchar_unlocked('-');}while(s--){my_putchar_unlocked(f[s]+'0');}}long long llReader(long long mn, long long mx, char nx){int i;int fg = 0;int m = 1;long long res = 0;double tmp = 0;for(;;){i = getchar();if(fg==0 && i=='-'){fg++;m = -1;}else if('0' <= i && i <= '9'){fg++;res = 10 * res + i - '0';tmp = 10 * tmp + i - '0';assert(tmp < 1e20);}else{break;}}assert(tmp / 2 <= res);assert((m==1 && fg >= 1) || (m==-1 && fg >= 2));assert(mn <= m * res && m * res <= mx);assert(i == nx);return m * res;}vector<long long> ppp(20000000+1);long long solve1(long long L, long long R){int i;long long res = 0;for(i=0;i<20000000+1;i++){if(L<=i && i<=R && ppp[i]){res++;}}for(i=0;i<20000000+1;i++){if(2*L-1<=i && i<=2*R-1 && ppp[i]){res++;}}return res;}int main(){long long L;long long R;long long res;L = llReader(1, 10000000, ' ');R = llReader(L, 10000000, '\n');assert(getchar() == EOF);int i;int j;for(i=2;i<20000000+1;i++){ppp[i] = 1;}for(i=2;i<20000000+1;i++){if(ppp[i]){for(j=2*i;j<20000000+1;j+=i){ppp[j] = 0;}}}res = solve1(L,R);wt_L(res);wt_L('\n');return 0;}// cLay version 20210717-1 [beta]// --- original code ---// ll llReader(ll mn, ll mx, char nx){// int i, fg = 0, m = 1;// ll res = 0; double tmp = 0;//// for(;;){// i = getchar();// if(fg==0 && i=='-'){// fg++;// m = -1;// } else if('0' <= i <= '9'){// fg++;// res = 10 * res + i - '0';// tmp = 10 * tmp + i - '0';// assert(tmp < 1e20);// } else {// break;// }// }// assert(tmp / 2 <= res);// assert((m==1 && fg >= 1) || (m==-1 && fg >= 2));// assert(mn <= m * res <= mx);// assert(i == nx);// return m * res;// }////// vector<ll> ppp(2d7+1);// ll solve1(ll L, ll R){// int i;// ll res = 0;// for(i=0;i<2d7+1;i++) if(L<=i<=R && ppp[i]) res++;// for(i=0;i<2d7+1;i++) if(2*L-1<=i<=2*R-1 && ppp[i]) res++;// return res;// }//// {// ll L, R, res;// L = llReader(1, 1d7, ' ');// R = llReader(L, 1d7, '\n');// assert(getchar() == EOF);//// int i, j;// for(i=2;i<2d7+1;i++) ppp[i] = 1;// for(i=2;i<2d7+1;i++) if(ppp[i]) for(j=2*i;j<2d7+1;j+=i) ppp[j] = 0;//// res = solve1(L,R);// wt(res);// }