From 11907cf8b583af795df58068d3634dc4d66b318c Mon Sep 17 00:00:00 2001 From: Xiretza Date: Thu, 9 Dec 2021 18:06:40 +0100 Subject: [PATCH] 2021 day8/rust: prettify calculation of output number Now that `digits` is a fixed-size array, both methods get unrolled the same and there is no performance difference. --- 2021/day8/day8_rs/src/v2.rs | 10 +--------- 1 file changed, 1 insertion(+), 9 deletions(-) diff --git a/2021/day8/day8_rs/src/v2.rs b/2021/day8/day8_rs/src/v2.rs index 735b4ac..87d99f2 100644 --- a/2021/day8/day8_rs/src/v2.rs +++ b/2021/day8/day8_rs/src/v2.rs @@ -42,14 +42,6 @@ pub fn unscramble(line: &str) -> LineResult { LineResult { unique_digits: digits.iter().filter(|d| [1, 4, 7, 8].contains(d)).count(), - number: digits - .iter() - .rev() - .scan(1, |mul, &d| { - let ret = Some(d * *mul); - *mul *= 10; - ret - }) - .sum(), + number: digits.iter().fold(0, |acc, d| acc * 10 + d), } }