From 868573fe49fd2b4a3ae42378f6f7b557b15fcb64 Mon Sep 17 00:00:00 2001 From: Jonathan Chan Date: Sun, 2 Jul 2017 22:57:36 -0700 Subject: [PATCH] Problem 69 --- 69.hs | 11 +++++++++++ 1 file changed, 11 insertions(+) create mode 100644 69.hs diff --git a/69.hs b/69.hs new file mode 100644 index 0000000..894a725 --- /dev/null +++ b/69.hs @@ -0,0 +1,11 @@ +import Math.NumberTheory.Primes.Factorisation +import Data.List + +ratio :: Integer -> Double +ratio n = foldr (\(prime, _) acc -> let p = fromIntegral prime in p / (p - 1) * acc) 1.0 $ factorise n + +answer :: Integer -> (Integer, Double) +answer n = let range = [2, 4..n] + in maximumBy (\(i1, r1) (i2, r2) -> compare r1 r2) $ zip range $ map ratio range + +main = print $ answer 1000000