时间复杂度o(n)
bool vis[maxn+5];//标记该数是否为素数
int prime[maxn+5]; // 素数数组
void Prime()
{
memset(vis, 0, sizeof(vis));
memset(prime,0, sizeof(prime));
for(int i = 2;i <= maxn;i++)
{
if(!vis[i])prime[++prime[i]] = i;//如果是素数就将其存入
for(int j = 1;j <= prime[0]&&i*prime[j]<= maxn;j++)
{
vis[i*prime[j]] = 1;
if(i%prime[j] == 0)break;
}
}
}
int main()
{
return 0;
}