fork download
  1. #include<bits/stdc++.h>
  2. using namespace std;
  3. #define int long long
  4. const int N=1e7+5,M=1e7;
  5. int good[N],good1[N];
  6. vector<int>snt,snt1;
  7. void sieve()
  8. {
  9. for(int a=2;a<=1e7;a++){
  10. good[a]=1;
  11. }
  12. for(int a=2;a<=1e7;a++){
  13. if(good[a]){
  14. for(int b=a*2;b<=1e7;b+=a){
  15. good[b]=0;
  16. }
  17. }
  18. }
  19. for(int a=0;a*a<=1e14;a++){
  20. if(good[a]) snt.push_back(a);
  21. }
  22. }
  23. /*void sieve1()
  24. {
  25.   for(int a=1e7+1;a<=2e7;a++){
  26.   good1[a-M]=1;
  27.   }
  28.   for(int a=1e7+1;a<=2e7;a++){
  29.   if(good1[a-M]){
  30.   for(int b=a*2;b<=2e7;b+=a){
  31.   good1[b-M]=0;
  32.   }
  33.   }
  34.   }
  35.   for(int a=1e7+1;a*a<=4e14;a++){
  36.   if(good1[a-M]) snt.push_back(a);
  37.   }
  38. }*/
  39. signed main()
  40. {
  41. ios_base::sync_with_stdio(false);
  42. cin.tie(0);
  43. cout.tie(0);
  44. int n;
  45. cin>>n;
  46. sieve();
  47. int sum=0;
  48. for(int a=0;a<n;a++){
  49. sum+=snt[a];
  50. }
  51. cout<<sum;
  52. }
  53.  
Success #stdin #stdout 0.31s 92116KB
stdin
500000


stdout
1774825271439