Problem 10
The sum of the primes below 10 is 2 + 3 + 5 + 7 = 17.
Find the sum of all the primes below two million.
C++:
#include参考链接:#include #include using namespace std;const int MAXN = 2000000;bool sieveflag[MAXN+1];void esieve(int n){ // 初始化 memset(sieveflag, true, sizeof(sieveflag)); sieveflag[0] = false; sieveflag[1] = false; for(int i=4; i<=n; i+=2) sieveflag[i] = false; // 筛选 int max = sqrt(n); for(int i=3; i<=max; i+=2) { if(sieveflag[i]) { for(int j=i+i; j<=n; j+=i) sieveflag[j] = false; } }}int main(){ esieve(MAXN); int n; while(cin >> n && n<=MAXN) { long sum = 2; for(int i=3; i