diff --git a/63 b/63 new file mode 100755 index 0000000..e1f3803 Binary files /dev/null and b/63 differ diff --git a/63.hi b/63.hi new file mode 100644 index 0000000..063ea48 Binary files /dev/null and b/63.hi differ diff --git a/63.hs b/63.hs new file mode 100644 index 0000000..078f185 --- /dev/null +++ b/63.hs @@ -0,0 +1,11 @@ +digits :: Integer -> Integer +digits n = 1 + (floor . logBase 10 . fromIntegral $ n) + +powerDigits :: Integer -> Integer -> Bool +powerDigits n p = digits (n ^ p) == p + +powers = takeWhile (powerDigits 9) [1..] + +count = sum $ map (\n -> sum $ map (\p -> if powerDigits n p then 1 else 0) powers) [1..9] + +main = do print count diff --git a/63.o b/63.o new file mode 100644 index 0000000..ecc502e Binary files /dev/null and b/63.o differ