Count Primes

Desicription

Count the number of prime numbers less than a non-negative number, n.

Example:

1
2
3
Input: 10
Output: 4
Explanation: There are 4 prime numbers less than 10, they are 2, 3, 5, 7.

Solution

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
class Solution {
public:
int countPrimes(int n) {
vector<bool> notPrime(n, false);
int cnt = 0;
for(int i = 2; i < n; i++) {
if(notPrime[i] == false) {
cnt++;
for(int j = 2; i*j < n; j++)
notPrime[i*j] = true;
}
}
return cnt;
}
};