我不知道为什么您没有获得所有输出,因为看起来您应该获得所有输出。您缺少什么输出?
筛网安装错误。就像是
vector<int> sieve;vector<int> primes;for (int i = 1; i < max + 1; ++i) sieve.push_back(i); // you'll learn more efficient ways to handle this latersieve[0]=0;for (int i = 2; i < max + 1; ++i) { // there are lots of brace styles, this is mine if (sieve[i-1] != 0) { primes.push_back(sieve[i-1]); for (int j = 2 * sieve[i-1]; j < max + 1; j += sieve[i-1]) { sieve[j-1] = 0; } }}
将实施筛子。(上面的代码写在我的头上;不保证可以工作甚至编译。我认为第4章末尾没有涉及任何内容。)
primes照常返回,并打印出全部内容。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)