Project Euler Problem 10

Summation of primes

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.

The code resemble :

import math


limit = 2000000
crosslimit = int(math.sqrt(limit))
#sieve = [False] * limit
sieve = [False for i in range(0, limit)]
for i in range(4, limit + 1, 2):
    sieve[i-1] = True
for i in range(3, crosslimit + 1, 2):
    if not sieve[i-1]:
        for m in range(i*i, limit+1, 2*i):
            sieve[m-1] = True

MySum = 0
for i in range(2, limit+1):
    if not sieve[i-1]:
        MySum += i

print(MySum)

  

原文地址:https://www.cnblogs.com/tianxiaozz/p/3478560.html