#include <iostream>
#include <cmath>
using namespace std;
void prime(bool a[], const int n);
int main()
{
int n;
bool a[1000000];
cin >> n;
prime(a,n);
for(int i=0;i<n;i++)
if(a[i] == true)
cout << i << " ";
cout << endl;
return 0;
}
void prime(bool a[], const int n)
{//Àÿ ˝…∏—°∑®
int i, j;
//∆Ê ˝±ÍŒ™true£¨≈º ˝±ÍŒ™false
a[0] = false;
a[1] = false;
a[2] = true;
for( i=3; i<n;i+=2)
{
a[i] = true;
a[i+1] = false;
}
//…∏—°
for( i=3; i<=sqrt(n); i+=2 )
{
if(a[i] == true)
for( j=i+i; j<=n; j+=i )
a[j] = false;
}
}
03-29
208
![](https://csdnimg.cn/release/blogv2/dist/pc/img/readCountWhite.png)
08-01
6777
![](https://csdnimg.cn/release/blogv2/dist/pc/img/readCountWhite.png)
08-12