diff options
Diffstat (limited to '125.py')
| -rw-r--r-- | 125.py | 22 |
1 files changed, 22 insertions, 0 deletions
@@ -0,0 +1,22 @@ + +limit = 10**8 + +squares = [ x*x for x in xrange(1, 7200) ] + +def is_palindrome(n): + nstr = str(n) + return nstr == nstr[::-1] + + +palindromes = set() + +for i in xrange(len(squares)-1): # iterate over all starting positions + for j in xrange(2, len(squares)): # iterate over all possible lengths + sqrsum = sum(squares[i:i+j]) + if sqrsum >= limit: + break + if is_palindrome(sqrsum): + palindromes.add(sqrsum) + +print sum(palindromes) + |
