You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
21 lines
358 B
21 lines
358 B
module Main where
|
|
|
|
main :: IO ()
|
|
main = interact solution
|
|
|
|
windows :: Int -> [a] -> [[a]]
|
|
windows _ [] = []
|
|
windows n (a:r) = take n (a:r) : windows n r
|
|
|
|
solution :: String -> String
|
|
solution =
|
|
show
|
|
. sum
|
|
. map (fromEnum . (\(a:b:_) -> a < b) )
|
|
. init
|
|
. windows 2
|
|
. map sum
|
|
. init . init
|
|
. windows 3
|
|
. map (read :: String -> Int)
|
|
. lines
|