Talk:Euler problems/121 to 130
From HaskellWiki
On the Project Euler Forum I found the following solution for Problem 127, posted there by glguy. main = print $ solve 99999
rad x = fromIntegral $ product $ map fst $ primePowerFactors $ fromIntegral x
solve :: Int -> Int solve n = sum [ c | (rc,c) <- invrads
, 2 * rc < c
, (ra, a) <- takeWhile (\(a,_)->(c > 2*rc*a)) invrads
, a < c `div` 2
, gcd ra rc == 1
, ra * rads ! (c - a) < c `div` rc]
where
rads :: UArray Int Int
rads = listArray (1,n) $ map rad [1..n]
invrads = sort $ map (\(a,b) -> (b, a)) $ assocs rads
Would responsible people be so kind as to check copyvio for this one? hk
