204. Count Primes
Count the number of prime numbers less than a non-negative number, n.
Example:
Input: 10
Output: 4
Explanation: There are 4 prime numbers less than 10, they are 2, 3, 5, 7.
Approach
题目大意:计算不大于n的质数个数
思路方法:埃拉托斯特尼筛法
Code
class Solution {
public:
int countPrimes(int n) {
vector<bool>primes(n + 1, true);
for (int i = 2; i * i < n; ++i) {
if (primes[i]) {
for (int j = i * i; j < n; j += i)
primes[j] = false;
}
}
int cnt = 0;
for (int i = 2; i < n; ++i)
if (primes[i])
++cnt;
return cnt;
}
};