Files
AoC2022/day6.hs
Amneesh Singh cadb7ccae1 day6: clean up
Signed-off-by: Amneesh Singh <natto@weirdnatto.in>
2022-12-07 10:24:10 +05:30

17 lines
359 B
Haskell

import Data.List (nub)
main :: IO ()
main = do
input <- readFile "day6.in"
putStr "Q1: "
print $ parse 4 input
putStr "Q2: "
print $ parse 14 input
group :: Int -> [Char] -> [[Char]]
group _ [] = []
group n xs = take n xs : group n (tail xs)
parse :: Int -> String -> Int
parse n = (+ n) . length . takeWhile ((< n) . length) . map nub . group n