给定一个正整数n,请你求出1~n中质数的个数。
输入格式
共一行,包含整数n。
输出格式
共一行,包含一个整数,表示1~n中质数的个数。
#include<bits/stdc++.h>
using namespace std;
#define ll long long
int ans[1000010];
bool a[1000010];
int cnt = 0;
void prime(int n)
{
memset(a,true,sizeof(a));
for(int i = 2; i <= n; i++)
{
if(a[i])
{
cnt++;
for(int j = i*2; j <= n; j += i)
{
a[j] = false;
}
}
}
}
int main()
{
int n;
scanf("%d",&n);
prime(n);
printf("%d\n",cnt);
}