Initial Commit

This commit is contained in:
ctsk
2023-08-27 22:30:00 +02:00
commit 1d3e647680
9 changed files with 2412 additions and 0 deletions

20
src/Days/D01.hs Normal file
View File

@@ -0,0 +1,20 @@
module Days.D01 where
import Lib (Day, Parser, definitive, parsecDay)
import Parse (number, someLines)
import Data.List (sortBy)
type Intermediate = [[Int]]
parser :: Parser Intermediate
parser = someLines (someLines number)
part1 :: Intermediate -> Int
part1 = maximum . map sum
part2 :: Intermediate -> Int
part2 = sum . take 3 . sortBy (flip compare) . map sum
day :: Day
day = parsecDay parser (definitive . part1, definitive . part2)