problem50.py 562 B

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