题目描述
用筛法求n之内的素数,n<=5e7
样例输入
100
样例输出
2
3
5
7
11
13
17
19
23
29
31
37
41
43
47
53
59
61
67
71
73
79
83
89
97
83分超时代码
#include <bits/stdc++.h>
using namespace std;
const int N=5e7+10;
int n,a[N];
int main(){
scanf("%lld",&n);
a[1]=1;
if(n<=1) return 0;
for(int i=2;i*i<=n;i++){
if(a[i]==0){
for(int j=i*i;j<=n;j+=i){
a[j]=1;
}
}
}
for(int i=1;i<=n;i++){
if(a[i]==0) printf("%lld\n",i);
}
return 0;
}