欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

每天一道LeetCode-----计算小于n的素数个数

程序员文章站 2024-03-14 21:17:47
...

Count Primes

原题链接Count Primes

每天一道LeetCode-----计算小于n的素数个数

计算小于n的素数个数

思路:

如果一个数m是素数,那么所有m * k就都不是素数。另外2是最小的素数

代码如下

class Solution {
public:
    int countPrimes(int n) {
        vector<int> nums(n 1);
        int count{0};
        for(int i = 2; i < n; ++i) {
            if(nums[i]) {
                ++count;
                for(int j = 2; i * j < n; ++j) {
                    nums[i * j] = 0;
                }
            }
        }
        return count;
    }
};
相关标签: leetcode