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

A66891. 在埃拉托斯特尼筛法中 ,要筛选出不⼤于n的所有素数 ,最外层循环应该遍历什么范围 ( ) ?1 vector<int> sieveOf Eratosthenes(int n) {

单选题

题目描述

在埃拉托斯特尼筛法中 ,要筛选出不⼤于n的所有素数 ,最外层循环应该遍历什么范围  (  )   ?

1 vector<int> sieveOf Eratosthenes(int n) {
2  std::vector<bool> isPrime(n + 1, true);
3  std::vector<int> primes;
4                      {
5   if (isPrime[i]) {
6    primes.push_back(i);
7    for (int j = i * i; j <= n; j += i) {
8     isPrime[j] = false;
9     }
10   }
11  }
12  for (int i = sqrt(n) + 1; i <= n; ++i) {
13   if (isPrime[i]) {
14    primes.push_back(i);
15   }
16  }
17  return primes;
18 }

选项(单选)