欧拉线性筛

算法模板

vector<bool> is_prime(N, true);
vector<int> primes;

void get() {
    is_prime[0] = is_prime[1] = false;
    fer(i, 2, N + 1) {
        if(is_prime[i]) primes.push_back(i);
        for(int j = 0; j < primes.size() && primes[j] * i <= N; ++j) {
            is_prime[primes[j] * i] = false;
            if(i % primes[j] == 0) break;
        }
    }
}
posted @ 2025-03-15 14:35  Thin_time  阅读(14)  评论(0)    收藏  举报