Advertisement
Shiam7777777

Untitled

Jan 21st, 2019
87
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 0.62 KB | None | 0 0
  1. #include<bits/stdc++.h>
  2. using namespace std;
  3. int prime[300000],nprime;
  4. int mark[1000000];
  5. void sieve(int n)
  6. {
  7.     int i,j,limit= sqrt(n*1.)+2;
  8.     mark[1] = 1;
  9.     for(i=4;i<=n;i+=2)
  10.         mark[i]=1;
  11.     prime[nprime++]=2;
  12.     for(i=3;i<=n;i+=2)
  13.         if(!mark[i])
  14.         {
  15.             prime[nprime++]=i;
  16.             if(i<=limit)
  17.             {
  18.                 for(j=i*i;j<=n;j+=i*2)
  19.                 {
  20.                     mark[j]=1;
  21.                 }
  22.             }
  23.         }
  24. }
  25. main()
  26. {
  27.     int n;
  28.     cin>>n;
  29.     sieve(n);
  30.     for(int i=0;i<nprime;i++)
  31.         cout<<prime[i]<<" ";
  32.     return 0;
  33. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement