首页 > 技术文章 > 204. Count Primes

linjj 2016-03-10 00:55 原文

筛法计算素数:

class Solution {
public:
    int countPrimes(int n) {
        vector<bool> isprime(n, true);
        isprime[0] = false;
        isprime[1] = false;
        for (int i = 2; i < sqrt(n); i++) {
            if (isprime[i]) {
                for (int j = i*i; j < n; j += i) {
                    isprime[j] = false;
                }
            }
        }
        return count(isprime.begin(), isprime.end(), true);
    }
};

 

推荐阅读