diff options
author | Tomasz Chojnacki <tomaszchojnacki2001@gmail.com> | 2023-02-22 14:01:12 +0100 |
---|---|---|
committer | Tomasz Chojnacki <tomaszchojnacki2001@gmail.com> | 2023-02-22 14:01:12 +0100 |
commit | efde7d6c018e360efbf590a67d128de41e6da7af (patch) | |
tree | 1ae6d7d3eba15c48b1219e4e9e1d956809f76064 /aoc-2020-gleam/src/days/day01.gleam | |
parent | 5746dbca0ddaef455b6f26fba3945f3533d0b2c1 (diff) | |
download | gleam_aoc2020-efde7d6c018e360efbf590a67d128de41e6da7af.tar.gz gleam_aoc2020-efde7d6c018e360efbf590a67d128de41e6da7af.zip |
Refactor previous days
Diffstat (limited to 'aoc-2020-gleam/src/days/day01.gleam')
-rw-r--r-- | aoc-2020-gleam/src/days/day01.gleam | 9 |
1 files changed, 4 insertions, 5 deletions
diff --git a/aoc-2020-gleam/src/days/day01.gleam b/aoc-2020-gleam/src/days/day01.gleam index 0d2a994..9e332d2 100644 --- a/aoc-2020-gleam/src/days/day01.gleam +++ b/aoc-2020-gleam/src/days/day01.gleam @@ -1,24 +1,23 @@ import gleam/io import gleam/int import gleam/list -import gleam/result as res import ext/resultx as resx import util/input_util -fn solve(numbers: List(Int), n: Int) -> Int { +fn solve(numbers: List(Int), n n: Int) -> Int { numbers |> list.combinations(by: n) |> list.find(one_that: fn(p) { int.sum(p) == 2020 }) - |> res.map(with: int.product) |> resx.assert_unwrap + |> int.product } fn part1(numbers: List(Int)) -> Int { - solve(numbers, 2) + solve(numbers, n: 2) } fn part2(numbers: List(Int)) -> Int { - solve(numbers, 3) + solve(numbers, n: 3) } pub fn run() -> Nil { |