Optimised day 19
[advent-of-code-22.git] / scrambled-mess / Main.hs
1 -- Addresses bonus puzzle at https://www.reddit.com/r/adventofcode/comments/zv4ixy/my_daughter_made_me_my_own_advent_of_code/
2
3 import AoC
4 import Data.List
5 import Data.Char
6
7 main :: IO ()
8 main =
9 do dataFileName <- getDataFileName
10 text <- readFile dataFileName
11 let duplicated = fmap head $ filter ((> 1) . length) $ group text
12 putStrLn $ filter isLetterIsh duplicated
13 putStrLn $ filter isDigit duplicated
14
15 isLetterIsh :: Char -> Bool
16 isLetterIsh c = (isLetter c) || (c == '-')