1
0

Project Euler #4

This commit is contained in:
2023-09-12 01:27:15 -04:00
parent cf8cecfa93
commit 68226c0057

View File

@@ -0,0 +1,21 @@
-- https://projecteuler.net/problem=4
import Debug.Trace (trace)
twoDigitProducts :: [Integer]
twoDigitProducts = [ n*m | n <- [10..99], m <- [n..99] ]
isPalindrome :: Integer -> Bool
isPalindrome n = all (== True) $ zipWith (==) half half'
where
(half, half'') = splitAt h n'
half' = reverse half''
h = length n' `div` 2
n' = show n
-- n' = trace (show n) $ show n
solve :: Integer
solve = maximum $ filter isPalindrome twoDigitProducts
main :: IO ()
main = print solve