from gauss import primes for p in reversed(list(primes(2, 1000))): c = 1 while (pow(10, c) - 1) % p != 0: c += 1 if (p-c) == 1: break print p
from gauss import primes print sum(list(primes(2, 2000000)))
from gauss import is_prime from gauss import primes def is_square(n): return int(n**.5) == n**.5 n = 33 brk = 0 while 1: if not is_prime(n): conj = 0 for prime in primes(2, n): if is_square((n - prime)/2): conj = 1 if not conj: print n break n += 2
from gauss import is_prime l = [] def trunl(n): res = [] strn = str(n) for i in xrange(1, len(strn)): res.append(int(strn[:i])) return res def trunr(n): res = [] strn = str(n) for i in xrange(1, len(strn)): res.append(int(strn[-i:])) return res for prime in primes(8, 10000000): if [1 for i in trunl(prime) if is_prime(i)] == [1]*(len(str(prime))-1): if [1 for i in trunr(prime) if is_prime(i)] == [1]*(len(str(prime))-1): l.append(prime) else: continue else: continue if len(l) == 11: print sum(l) break
from gauss import primes from gauss import perms lprimes = list(primes(1000, 10000)) def is_add_seq(x, y, z): return z - y == y - x i = 0 for x in xrange(1, len(lprimes)): a = lprimes[x] lperms = list(perms(str(a))) for y in xrange(x+1, len(lprimes)): b = lprimes[y] if not str(b) in lperms: continue for z in xrange(y+1, len(lprimes)): c = lprimes[z] if not str(c) in lperms: continue if is_add_seq(a, b, c): i += 1 if i == 2: print "%s%s%s" % (a, b, c)
from gauss import primes from gauss import perms tot = 0 lprimes = list(primes(2, 17)) i = 1 for perm in perms('0123456789'): while i < 8: if int("".join(perm[i:i+3])) % lprimes[i-1]: i = 1 break i += 1 if i == 8: tot += int(perm) i = 1 print tot