第20702题
判断给定的线性筛素数算法的描述及代码实现是否正确

如下为线性筛法,用于高效生成素数表,其核心思想是每个合数只被它的最小质因数筛掉一次,时间复杂度为O(n)。

vector<int> linearSieve(int n) {    vector<bool> is_prime(n + 1, true);    vector<int> primes;    for (int i = 2; i <= n; ++i) {        if (is_prime[i]) {            primes.push_back(i);        }        for (int j = 0; j < primes.size() && i * primes[j] <= n; ++j) {            is_prime[i * primes[j]] = false;            if (i % primes[j] == 0) {                break;            }        }    }    return primes;}
A

正确

B

错误

提交0次 正确率0.00%
答案解析