problem50.py 650 B

1234567891011121314151617181920212223
  1. #!/usr/bin/env python
  2. from math import sqrt
  3. from utils import primes_until
  4. def maxprime(n):
  5. primes = list(primes_until(n))
  6. maxp = maxlen = 2
  7. for start in xrange(len(primes)):
  8. for end in xrange(start + maxlen + 1, start + 800):
  9. if end - start >= maxlen:
  10. conseq = primes[start:end]
  11. s = sum(conseq)
  12. if len(conseq) > 1 and s in primes[start:]:
  13. maxlen = end - start
  14. maxp = s
  15. print maxp
  16. #print '%s = %d' % (' + '.join(map(str, primes[start:end])), s)
  17. return maxp
  18. print maxprime(1000000)