Advertisement
DMG

Eratostenovo sito

DMG
Mar 14th, 2014
186
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 0.38 KB | None | 0 0
  1. def sieve(n):
  2.     "Return all primes <= n."
  3.     np1 = n + 1
  4.     s = list(range(np1)) # leave off `list()` in Python 2
  5.     s[1] = 0
  6.     sqrtn = int(round(n**0.5))
  7.     for i in range(2, sqrtn + 1): # use `xrange()` in Python 2
  8.         if s[i]:
  9.             # next line:  use `xrange()` in Python 2
  10.             s[i*i: np1: i] = [0] * len(range(i*i, np1, i))
  11.     return filter(None, s)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement