advent-of-code/2023/day06/Main2.hs

17 lines
451 B
Haskell
Raw Permalink Normal View History

2024-05-17 15:41:55 +02:00
import Data.List.Split (splitOn)
winsFromTimeDist :: (Int, Int) -> Int
winsFromTimeDist (time, dist) = length $ filter (> dist) $ zipWith (*) [0..time] (reverse [0..time])
main :: IO ()
main = do
lines <- lines <$> getContents
-- let values = map (map (\y -> read y :: Int) . splitOn [' '] . drop 9) lines
let values = map (read . filter (/= ' ') . drop 9) lines :: [Int]
let wins = winsFromTimeDist (values!!0, values!!1)
print wins