summaryrefslogtreecommitdiff
path: root/haskell/p3.hs
diff options
context:
space:
mode:
authorGuillermo Ramos2013-05-27 10:31:48 +0200
committerGuillermo Ramos2013-05-27 10:31:48 +0200
commit317ee36636ebeec986971ef857cd297f0320e58d (patch)
tree88c10fdbf166beae22f6c9d6c79970ae2240f4b0 /haskell/p3.hs
downloadeuler-317ee36636ebeec986971ef857cd297f0320e58d.tar.gz
start
Diffstat (limited to 'haskell/p3.hs')
-rw-r--r--haskell/p3.hs9
1 files changed, 9 insertions, 0 deletions
diff --git a/haskell/p3.hs b/haskell/p3.hs
new file mode 100644
index 0000000..f50c2de
--- /dev/null
+++ b/haskell/p3.hs
@@ -0,0 +1,9 @@
+p3 :: Integer
+p3 = maximum $ factors 600851475143 []
+ where
+ factors :: Integer -> [Integer] -> [Integer]
+ factors 1 l = l
+ factors n l = factors (div n divisor) (divisor:l)
+ where divisor = head $ filter (\x -> mod n x == 0) [2..]
+
+main = putStrLn $ "Solution: " ++ show p3