Watch
1
0
Fork
You've already forked advent-of-code
0
This commit is contained in:
Jeremy Kaplan 2022-12-02 21:48:20 -08:00
commit 9184f6adfd

View file

@ -36,13 +36,10 @@ fn part2(input: &str) -> usize {
let mut sum = 0; let mut sum = 0;
let lines = input.split('\n').filter(|l| !l.is_empty()); let lines = input.split('\n').filter(|l| !l.is_empty());
for group in &lines.chunks(3) { for group in &lines.chunks(3) {
let sets: Vec<HashSet<char>> = group let shared: HashSet<char> = group
.map(|rucksack| rucksack.chars().collect::<HashSet<char>>()) .map(|rucksack| rucksack.chars().collect::<HashSet<char>>())
.collect(); .reduce(|acc, item| acc.intersection(&item).cloned().collect())
.unwrap();
let mut shared = sets[0].clone();
shared = shared.intersection(&sets[1]).cloned().collect();
shared = shared.intersection(&sets[2]).cloned().collect();
let badge = shared.iter().next().unwrap(); let badge = shared.iter().next().unwrap();