module Day8 where import System.IO (openFile, IOMode (ReadMode), hClose, hGetContents) import Data.Text (splitOn, unpack, pack) import Prelude hiding (splitAt) splitAt :: String -> String -> [String] splitAt delimiter str = map unpack $ splitOn (pack delimiter) $ pack str main :: IO () main = do input <- openFile "inputs/8.txt" ReadMode contents <- hGetContents input let patterns = map (splitAt " ") . splitAt " | " <$> lines contents print . sum . map (length . filter (\x -> length x `elem` [2,3,4,7])) $ (!! 1) <$> patterns hClose input