Mercurial > hg > euler
view problem27.py @ 0:0e08f4decf67
Adding files from xenon
author | Dominic Cleal <dominic@computerkb.co.uk> |
---|---|
date | Mon, 01 Dec 2008 02:44:16 +0000 |
parents | |
children |
line wrap: on
line source
import math def test(a, b): n = 0 fx = lambda n: n**2 + a*n + b v = fx(n) while v > 1 and isprime(v): n += 1 v = fx(n) return n - 1 def isprime_int(x): for t in range(3, int(math.floor(math.sqrt(x)))): if x % t == 0: return False return True cache = { } def isprime(x): if x % 2 == 0: return False if x in cache: return cache[x] r = isprime_int(x) cache[x] = r return r rmx = 0 for a in range(-999,1000): for b in range(-999,1000): r = test(a, b) if r > rmx: rmx = r rcoeff = (a, b) print "New winner, a=%d, b=%d for %d" % (a, b, r)