#!/usr/bin/env python
from libeuler import is_prime, primes
from math import sqrt
if __name__ == '__main__':
P = primes(100000)
n = 1
while True:
found = False
for p in P[1:]:
a2 = n - 0.5*(p - 1)
if a2 < 0:
break
if sqrt(a2) == float(int(sqrt(a2))):
print "%d -> %d + 2*%d^2" % (2*n + 1, p, sqrt(a2))
found = True
n += 1
break
if not found and not (2*n+1) in P:
print 2*n + 1
break
vendredi 15 octobre 2010
Euler #46
Inscription à :
Publier les commentaires (Atom)
Aucun commentaire:
Enregistrer un commentaire