type Calorie = Int
type Elf = [Calorie]
type Expedition = [Elf]
do
content <- input 1
let run = Aoc.run content
run (pure 69206) (part1 . lines)
run (pure 197400) (part2 . lines)
[]
parse xs = case break null . dropWhile null $ xs of
([], _) -> []
(xs, rest) -> map read xs : parse rest where
maximum . map sum . parse
sum . take 3 . reverse . sort . map sum . parse