diff options
author | HJ <thechairman@thechairman.info> | 2023-12-09 01:25:46 -0500 |
---|---|---|
committer | HJ <thechairman@thechairman.info> | 2023-12-09 01:25:46 -0500 |
commit | 7c69adbce6f3ab1075039e23c9c04ebd61ec0761 (patch) | |
tree | 38b84fb29bc09bdbaa32e4b601cc9affde38a28c /aoc2023/src/day7/solve.gleam | |
parent | 2f570466b75ca76636a692006bec59cbb3a038cf (diff) | |
parent | df2f2fd140f188dfb5df68b44e397a8855e79f02 (diff) | |
download | gleam_aoc-7c69adbce6f3ab1075039e23c9c04ebd61ec0761.tar.gz gleam_aoc-7c69adbce6f3ab1075039e23c9c04ebd61ec0761.zip |
Merge branch 'main' of https://github.com/hunkyjimpjorps/AdventOfCode
Diffstat (limited to 'aoc2023/src/day7/solve.gleam')
-rw-r--r-- | aoc2023/src/day7/solve.gleam | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/aoc2023/src/day7/solve.gleam b/aoc2023/src/day7/solve.gleam index 08740f6..4454883 100644 --- a/aoc2023/src/day7/solve.gleam +++ b/aoc2023/src/day7/solve.gleam @@ -16,7 +16,7 @@ type Hand { // Common functions -------------------------------------------------------------------------------- fn parse_hand(str: String) -> Hand { - let [cards, wager] = string.split(str, " ") + let assert [cards, wager] = string.split(str, " ") let cards = string.to_graphemes(cards) |> list.map(card_rank) @@ -54,7 +54,7 @@ fn card_rank(card: String) -> Int { _, "Q" -> 12 _, "J" -> 11 _, "T" -> 10 - _, "*" -> 1 + _, _ -> 1 } } @@ -67,8 +67,8 @@ fn compare_hands(hand1: Hand, hand2: Hand, using: fn(Hand) -> Int) -> Order { fn compare_top_card(cards1: List(Int), cards2: List(Int)) -> Order { use <- bool.guard(cards1 == [] || cards2 == [], Eq) - let [c1, ..rest1] = cards1 - let [c2, ..rest2] = cards2 + let assert [c1, ..rest1] = cards1 + let assert [c2, ..rest2] = cards2 case int.compare(c1, c2) { Eq -> compare_top_card(rest1, rest2) other -> other |