Advertisement
danchaofan

Euler #187

Dec 19th, 2017
131
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 0.45 KB | None | 0 0
  1. def primes_sieve(limit):
  2.     a = [True] * limit
  3.     a[0] = a[1] = False
  4.  
  5.     for (i, isprime) in enumerate(a):
  6.         if isprime:
  7.             yield i
  8.             for n in range(i*i, limit, i):
  9.                 a[n] = False
  10.  
  11. primes, nums = list(primes_sieve(int((10**8)/2))), []
  12.  
  13. for a in primes:
  14.     print(a)
  15.     for b in primes:
  16.         if a*b >= 10**8:
  17.             break
  18.         else:
  19.             nums.append(a*b)
  20. print(len(set(nums)))
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement