summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorReiner Herrmann <reiner@reiner-h.de>2011-12-01 16:31:43 +0100
committerReiner Herrmann <reiner@reiner-h.de>2014-08-31 20:35:09 +0200
commitbdfe75ef8a7be289657d53e38f18439d1cd876e1 (patch)
tree85133acaa880142387481afa2f5f1e473b08580d /src
parentafa064013cff0579b3c6cee8079a7d60af88f646 (diff)
solved projecteuler 125
Diffstat (limited to 'src')
-rw-r--r--src/projecteuler/125.py22
1 files changed, 22 insertions, 0 deletions
diff --git a/src/projecteuler/125.py b/src/projecteuler/125.py
new file mode 100644
index 0000000..35dae6b
--- /dev/null
+++ b/src/projecteuler/125.py
@@ -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)
+