埃氏筛
2024-11-20 22:21:40
发布于:云南
1阅读
0回复
0点赞
写个埃氏筛模板
#include<bits/stdc++.h>
using namespace std;
bool pri[1000005];
void shai(int n){
pri[0] = pri[1] = false;
for(int i = 2;i * i <= n;i++){
if(pri[i]){
for(int j = i * i;j <= n;j += i) pri[j] = false;
}
}
}
int main(){
memset(pri,true,sizeof pri);
int n; cin >> n;
shai(n);
int ans = 0;
for(int i = 1;i <= n;i++){
if(pri[i] == true) ans++;
}
cout << ans;
return 0;
}
这里空空如也
有帮助,赞一个