diff options
Diffstat (limited to 'aoc2019_gleam/src/aoc_2019/day_1.gleam')
-rw-r--r-- | aoc2019_gleam/src/aoc_2019/day_1.gleam | 30 |
1 files changed, 0 insertions, 30 deletions
diff --git a/aoc2019_gleam/src/aoc_2019/day_1.gleam b/aoc2019_gleam/src/aoc_2019/day_1.gleam deleted file mode 100644 index 8a7fd2d..0000000 --- a/aoc2019_gleam/src/aoc_2019/day_1.gleam +++ /dev/null @@ -1,30 +0,0 @@ -import gleam/int -import gleam/list -import gleam/result -import gleam/string - -pub fn parse(input: String) -> List(Int) { - input - |> string.split("\n") - |> list.map(int.parse) - |> result.values() -} - -pub fn pt_1(input: List(Int)) { - list.fold(input, 0, fn(total, next) { total + naive_fuel(next) }) -} - -pub fn pt_2(input: List(Int)) { - list.fold(input, 0, fn(total, next) { total + recursive_fuel(next) }) -} - -fn naive_fuel(weight: Int) -> Int { - { weight / 3 } - 2 -} - -fn recursive_fuel(weight: Int) -> Int { - case { weight / 3 } - 2 { - n if n <= 0 -> 0 - n -> n + recursive_fuel(n) - } -} |