204. 计数质数 - 力扣(LeetCode) (leetcode-cn.com)
找到第一个质数2,去掉所有2的倍数,接着找下一个质数,再去掉所有该质数的倍数
class Solution {
public:
int countPrimes(int n) {
int a[n+1];
int count=0;
for(int i=2;i<n;i++)
a[i]=1;
for(int i=2;i<n;i++){
if(a[i]){
for(int j=2*i;j<n;j+=i) a[j]=0;
count++;
}
}
return count;
}
};