Files
aoc-2022/app/Main.hs
Christian b5468d1db7 Day 13
2023-09-25 12:13:13 +02:00

43 lines
826 B
Haskell

{-# LANGUAGE LambdaCase #-}
module Main where
import Lib
import System.Environment (getArgs)
paths :: [FilePath]
paths =
[ "./data/01.in"
, "./data/02.in"
, "./data/03.in"
, "./data/04.in"
, "./data/05.in"
, "./data/06.in"
, "./data/07.in"
, "./data/08.in"
, "./data/09.in"
, "./data/10.in"
, "./data/11.in"
, "./data/12.in"
, "./data/13.in"
]
solutions :: [(Int, Day, FilePath)]
solutions = zip3 [1 ..] (map head days) paths
runAll :: [(Int, Day, FilePath)] -> IO ()
runAll = mapM_ (\(dayNum, day, path) -> run day path >>= printDR dayNum)
usage :: IO ()
usage = putStrLn "./Main"
main :: IO ()
main =
printHeader
>> getArgs
>>= (\case
["all"] -> runAll solutions
_ -> runAll [last solutions])
>> printFooter