//10^8内素数的个数
#include <bits/stdc++.h>
using namespace std;
const int MAX = 1e8+10;
int n,ans;
bool isPrime[MAX];
int main()
{
cin>>n;
isPrime[1]=1;
for(int i=2;i*i<=n;i++)
{
if(isPrime[i]==0)
for(int j=i*i;j<=n;j+=i)
isPrime[j]=1;
}
for(int i=2;i<=n;i++)
{
if(isPrime[i]==0)
ans++;
}
cout<<ans<<endl;
return 0;
}
洛谷P3912 统计素数个数(10^8以内)
最新推荐文章于 2024-10-20 10:43:07 发布