From 96a3f6da2cfeb0b0fdb5decbe1a03c32cc8e5598 Mon Sep 17 00:00:00 2001 From: Nilstrieb <48135649+Nilstrieb@users.noreply.github.com> Date: Sat, 9 Dec 2023 14:14:18 +0100 Subject: [PATCH] cleanup --- 2023/day09/src/less_alloc.rs | 22 +++++++++++----------- 2023/day09/src/lib.rs | 20 ++++++++++---------- 2 files changed, 21 insertions(+), 21 deletions(-) diff --git a/2023/day09/src/less_alloc.rs b/2023/day09/src/less_alloc.rs index 68a5714..09f8ed2 100644 --- a/2023/day09/src/less_alloc.rs +++ b/2023/day09/src/less_alloc.rs @@ -10,28 +10,28 @@ fn execute( last_or_first: impl Fn(&[i64]) -> i64, fold: impl Fn(i64, i64) -> i64 + Copy, ) -> i64 { - let mut values = Vec::with_capacity(128); - let mut derive = Vec::with_capacity(128); + let mut row1 = Vec::with_capacity(128); + let mut row2 = Vec::with_capacity(128); let mut last_values = Vec::with_capacity(16); input .map(|values_iter| { - values.clear(); + row1.clear(); - values.extend(values_iter); - derive.clone_from(&values); + row1.extend(values_iter); + row2.clone_from(&row1); last_values.clear(); - last_values.push(last_or_first(&values)); + last_values.push(last_or_first(&row1)); - while !derive.iter().all(|&n| n == 0) { - values.clear(); - values.extend(derive.windows(2).map(|s| s[1] - s[0])); + while !row2.iter().all(|&n| n == 0) { + row1.clear(); + row1.extend(row2.windows(2).map(|s| s[1] - s[0])); - last_values.push(last_or_first(&values)); + last_values.push(last_or_first(&row1)); - std::mem::swap(&mut values, &mut derive); + std::mem::swap(&mut row1, &mut row2); } last_values.iter().copied().rev().fold(0, fold) diff --git a/2023/day09/src/lib.rs b/2023/day09/src/lib.rs index 47905f3..e0c9989 100644 --- a/2023/day09/src/lib.rs +++ b/2023/day09/src/lib.rs @@ -46,20 +46,20 @@ fn execute( fold: impl Fn(i64, i64) -> i64 + Copy, ) -> i64 { input - .map(|mut values| { - let mut last_values = vec![last_or_first(&values)]; + .map(|mut row1| { + let mut last_values = vec![last_or_first(&row1)]; - let mut derive = values.clone(); + let mut row2 = row1.clone(); - while !derive.iter().all(|&n| n == 0) { - values.clear(); - values.extend(derive.windows(2).map(|s| s[1] - s[0])); + while !row2.iter().all(|&n| n == 0) { + row1.clear(); + row1.extend(row2.windows(2).map(|s| s[1] - s[0])); - last_values.push(last_or_first(&values)); + last_values.push(last_or_first(&row1)); - let tmp = derive; - derive = values; - values = tmp; + let tmp = row2; + row2 = row1; + row1 = tmp; } last_values.into_iter().rev().fold(0, fold)