int countPrimes(int n){
int count = 0,s = sqrt(n);
int *arr = malloc(sizeof(int)*n);
if(n>2)
{
for(int i=2;i<n;i++)
arr[i]=1;
for(int i=2;i<=s;i++)
if(arr[i]){
for(int j=i*2;j<n;j+=i)
arr[j]=0;
}
}
for(int i=2;i<n;i++)
{
if(arr[i])
count++;
}
return count;
}
204. 计数质数个人解法
最新推荐文章于 2024-09-10 15:28:21 发布
![](https://img-home.csdnimg.cn/images/20240711042549.png)