Add day 1 in Haskell
This commit is contained in:
parent
9b19387e42
commit
c158f59eff
|
@ -0,0 +1,17 @@
|
|||
import System.IO
|
||||
import Text.Printf
|
||||
|
||||
main :: IO ()
|
||||
main = do
|
||||
content <- getContents
|
||||
let input = map read (lines content)
|
||||
printf "Part 1: %d\n" (fuel input)
|
||||
printf "Part 2: %d\n" (fuelrec input)
|
||||
|
||||
fuel :: [Int] -> Int
|
||||
fuel xs = sum (map (subtract 2 . (`div` 3)) xs)
|
||||
|
||||
fuelrec :: [Int] -> Int
|
||||
fuelrec xs = sum (map f xs) - sum xs where
|
||||
f x | x > 0 = x + f ((subtract 2 . (`div` 3)) x)
|
||||
| otherwise = 0
|
Loading…
Reference in New Issue
Block a user