add expect tests

This commit is contained in:
ryan committed 2023-10-09 14:14:13 -07:00
1 parent b6eae27d9d
commit 31a75867fa
12 files changed
+119 -62

No files matched your search

+13 -9
View File
@@ -44,7 +44,7 @@ let parse_monkeys () =
let throw item monkey = monkey.items <- List.append [ item ] monkey.items
let round monkies manageable =
let round monkies ~manageable =
let divisor = Array.fold_left (fun acc monkey -> acc * monkey.test_num) 1 monkies in
let destress score = if manageable then score / 3 else Int.(score mod divisor) in
monkies
@@ -58,10 +58,10 @@ let round monkies manageable =
monkey.items <- [])
;;
let solve rounds manageable =
let solve rounds ~manageable =
let monkies = parse_monkeys () in
for _ = 1 to rounds do
round monkies manageable
round monkies ~manageable
done;
monkies
|> Array.to_list
@@ -73,11 +73,15 @@ let solve rounds manageable =
|> Option.get_exn_or "aoc goofed up the input"
;;
let part1 () = solve 20 true
let part2 () = solve 10_000 false
let part1 () = solve 20 ~manageable:true
let part2 () = solve 10_000 ~manageable:false
let print () =
Printf.(
printf "Day 11.1: %d\n" @@ part1 ();
printf "Day 11.2: %d\n" @@ part2 ())
let%expect_test "Day 11.1" =
Printf.printf "%d" @@ part1 ();
[%expect {| 56350 |}]
;;
let%expect_test "Day 11.2" =
Printf.printf "%d" @@ part2 ();
[%expect {| 13954061248 |}]
;;