Ubuntu Pastebin

Paste from undecim at Sat, 24 Jan 2015 01:12:28 +0000

Download as text
 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 sieve_for_primes_to(n):
    size = n//2
    sieve = [1]*size
    limit = int(n**0.5)
    for i in range(1,limit):
        if sieve[i]:
            val = 2*i+1
            tmp = ((size-1) - i)//val 
            sieve[i+val::val] = [0]*tmp
    return [2] + [i*2+1 for i, v in enumerate(sieve) if v and i>0]

sieve = sieve_for_primes_to(1000000)


primesixes = {}
maxprime = 0
maxsixes = 0
for prime in sieve:
    if prime >= 100000:
        sixes = str(prime).count('6')
        primesixes[prime] = sixes
        if sixes > maxsixes:
            maxsixes = sixes
            maxprime = prime
            print("New max", prime, sixes)
Download as text