测评会员优惠活动进行中 · 开通 VIP,有效期内测评不限次 VIP 优惠中 · 测评不限次 立即查看

A27054. 如下为线性筛法,用于高效生成素数表,其核心思想是每个合数只被它的最小质因数筛掉一次,时间复杂度为O(n)。( )vector<int>linearsieve(int n){ vector<bool>is prime(n +1,true); vector<int>primes; for(inti=2;i<= n; ++i){ if(is_prime[i]){ primes.push back(i)…

判断题 困难

题目描述

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

vector<int>linearsieve(int n){
    vector<bool>is prime(n +1,true);
    vector<int>primes;

    for(inti=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;
}

选项(单选)

上一题 下一题