diff --git a/2023/src/day06.rs b/2023/src/day06.rs index da58637..5ac053d 100644 --- a/2023/src/day06.rs +++ b/2023/src/day06.rs @@ -54,7 +54,7 @@ fn ways(time: u64, distance: u64) -> u64 { while min < max { let mid = min + (max - min) / 2; - if mid * (time - mid) < distance { + if mid * (time - mid) <= distance { min = mid + 1; } else { max = mid; @@ -94,6 +94,13 @@ mod tests { const SAMPLE: &[u8] = include_bytes!("samples/06.txt"); + #[test] + fn individual_samples() { + assert_eq!(ways(7, 9), 4); + assert_eq!(ways(15, 40), 8); + assert_eq!(ways(30, 200), 9); + } + #[test] fn sample_part1() { assert_eq!(part1(SAMPLE).unwrap(), "288");