[Python] crivello Atkin?

Pietro Battiston toobaz a email.it
Mar 16 Mar 2010 10:32:59 CET


Il giorno mar, 16/03/2010 alle 10.19 +0100, Marco Beri ha scritto:
> 2010/3/16 Pietro Battiston <toobaz a email.it
>         > La spiegazione fornita da wikipedia non la capisco..
>         
>         
>         Neanch'io, ma forse c'è qualcos'altro che non capisco: i
>         seguenti
>         comandi
>         
>         >>> l = [True] * 2000000
>         >>> for i in range(2, 2000):
>         ...     if l[i]:
>         ...         for j in range(2, 2000000/i):
>         ...             l[i*j] = False
>         >>> print sum([i for i in range(2, 2000000) if l[i]])
>         
>         richiedono meno di 10 secondi sul mio computer. C'è qualcosa
>         che mi
>         sfugge?
> 
> Direi nulla tranne qualche condizione al contorno... :-)

Se intendi il "-1", mi stupirebbe che quello richiedesse 10 minuti :-)

Pietro




Maggiori informazioni sulla lista Python