1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 | def prime_numbers(limit=1000000): '''Prime number generator. Yields the series 2, 3, 5, 7, 11, 13, 17, 19, 23, 29 ... using Sieve of Eratosthenes. ''' output = [2] sub_limit = int(limit**0.5) flags = [False, False] + [True] * (limit - 2) # Step through all the odd numbers for i in range(3, limit, 2): if flags[i] is False: continue output.append(i) # Exclude further multiples of the current prime number if i <= sub_limit: for j in range(i*3, limit, i<<1): flags[j] = False return output if __name__ == '__main__': from time import time start = time() primes = prime_numbers() print(time() - start, "seconds") # print('\n'.join(str(p) for p in primes)) |
ZGVmIHByaW1lX251bWJlcnMobGltaXQ9MTAwMDAwMCk6CiAgICAnJydQcmltZSBudW1iZXIgZ2VuZXJhdG9yLiBZaWVsZHMgdGhlIHNlcmllcwogICAgMiwgMywgNSwgNywgMTEsIDEzLCAxNywgMTksIDIzLCAyOSAuLi4gICAgCiAgICB1c2luZyBTaWV2ZSBvZiBFcmF0b3N0aGVuZXMuCiAgICAnJycKICAgIG91dHB1dCA9IFsyXQogICAgc3ViX2xpbWl0ID0gaW50KGxpbWl0KiowLjUpIAogICAgZmxhZ3MgPSBbRmFsc2UsIEZhbHNlXSArIFtUcnVlXSAqIChsaW1pdCAtIDIpICAgCiAgICAjIFN0ZXAgdGhyb3VnaCBhbGwgdGhlIG9kZCBudW1iZXJzCiAgICBmb3IgaSBpbiByYW5nZSgzLCBsaW1pdCwgMik6ICAgICAgIAogICAgICAgIGlmIGZsYWdzW2ldIGlzIEZhbHNlOgogICAgICAgICAgICBjb250aW51ZQogICAgICAgIG91dHB1dC5hcHBlbmQoaSkKICAgICAgICAjIEV4Y2x1ZGUgZnVydGhlciBtdWx0aXBsZXMgb2YgdGhlIGN1cnJlbnQgcHJpbWUgbnVtYmVyCiAgICAgICAgaWYgaSA8PSBzdWJfbGltaXQ6CiAgICAgICAgICAgIGZvciBqIGluIHJhbmdlKGkqMywgbGltaXQsIGk8PDEpOgogICAgICAgICAgICAgICAgZmxhZ3Nbal0gPSBGYWxzZQogICAgcmV0dXJuIG91dHB1dAogICAgICAgIAppZiBfX25hbWVfXyA9PSAnX19tYWluX18nOgogICAgZnJvbSB0aW1lIGltcG9ydCB0aW1lCiAgICBzdGFydCA9IHRpbWUoKQogICAgcHJpbWVzID0gcHJpbWVfbnVtYmVycygpCiAgICBwcmludCh0aW1lKCkgLSBzdGFydCwgInNlY29uZHMiKQojICAgIHByaW50KCdcbicuam9pbihzdHIocCkgZm9yIHAgaW4gcHJpbWVzKSk=
-
upload with new input
-
result: Success time: 0.34s memory: 0 kB returned value: 0
0.31068110466 seconds


