From 9184f6adfd069995f70e5f08a3b4159176f9e367 Mon Sep 17 00:00:00 2001 From: Jeremy Kaplan Date: Fri, 2 Dec 2022 21:48:20 -0800 Subject: [PATCH] Reduced! --- 2022/src/bin/day03.rs | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/2022/src/bin/day03.rs b/2022/src/bin/day03.rs index ce7f24b..f364e2f 100644 --- a/2022/src/bin/day03.rs +++ b/2022/src/bin/day03.rs @@ -36,13 +36,10 @@ fn part2(input: &str) -> usize { let mut sum = 0; let lines = input.split('\n').filter(|l| !l.is_empty()); for group in &lines.chunks(3) { - let sets: Vec> = group + let shared: HashSet = group .map(|rucksack| rucksack.chars().collect::>()) - .collect(); - - let mut shared = sets[0].clone(); - shared = shared.intersection(&sets[1]).cloned().collect(); - shared = shared.intersection(&sets[2]).cloned().collect(); + .reduce(|acc, item| acc.intersection(&item).cloned().collect()) + .unwrap(); let badge = shared.iter().next().unwrap();