diff --git a/src/day_01.rs b/src/day_01.rs index 94dc343..561e330 100644 --- a/src/day_01.rs +++ b/src/day_01.rs @@ -32,6 +32,17 @@ pub fn count_increases_tuple_windows(input: &[usize]) -> usize { count } +#[aoc(day1, part1, slice_windows)] +pub fn count_increases_slice_windows(input: &[usize]) -> usize { + let mut count = 0; + for window in input.windows(2) { + if window[0] < window[1] { + count += 1; + } + } + count +} + #[aoc(day1, part2)] pub fn count_sliding_increases_indexed(input: &[usize]) -> usize { let mut count = 0; @@ -53,3 +64,14 @@ pub fn count_sliding_increases_tuple_windows(input: &[usize]) -> usize { } count } + +#[aoc(day1, part2, slice_windows)] +pub fn count_sliding_increases_slice_windows(input: &[usize]) -> usize { + let mut count = 0; + for w in input.windows(4) { + if w[0] + w[1] + w[2] < w[1] + w[2] + w[3] { + count += 1; + } + } + count +}