Problem 125

http://projecteuler.net/index.php?section=problems&id=125

nubを忘れてハマッタ。

import Data.List
isPalin x=(reverse.show)x==show x
sumSquUpTo upp n = takeWhile (<upp).tail.scanl1 (+). map (^2)$[n..]
lim = 10^8
main = print.sum.nub.concatMap (filter isPalin.sumSquUpTo lim)$[1..floor.sqrt.fromIntegral$div lim 2]
More Reading
Newer// Problem 124
Older// Problem 127