1
0
Fork 0

Clean up 08

This commit is contained in:
Lars Martens 2025-12-09 07:54:31 +01:00
parent 132d940664
commit 4e506cafe9
Signed by: haselkern
GPG key ID: B5CF1F363C179AD4

View file

@ -46,8 +46,8 @@ fn part2(input: &str) -> usize {
} }
fn connect(mut circuits: Vec<Circuit>, (a, b): (JBox, JBox)) -> Vec<Circuit> { fn connect(mut circuits: Vec<Circuit>, (a, b): (JBox, JBox)) -> Vec<Circuit> {
let with_a = circuits.iter_mut().position(|c| c.contains(&a)); let with_a = circuits.iter().position(|c| c.contains(&a));
let with_b = circuits.iter_mut().position(|c| c.contains(&b)); let with_b = circuits.iter().position(|c| c.contains(&b));
match (with_a, with_b) { match (with_a, with_b) {
(Some(with_a), Some(with_b)) => { (Some(with_a), Some(with_b)) => {
// Merge into with_a. with_b will be empty, but whatever. // Merge into with_a. with_b will be empty, but whatever.
@ -71,8 +71,7 @@ fn pairs(boxes: &[JBox]) -> impl Iterator<Item = (JBox, JBox)> + use<'_> {
boxes boxes
.iter() .iter()
.copied() .copied()
.combinations(2) .tuple_combinations()
.map(|v| (v[0], v[1]))
.sorted_by_key(|&(a, b)| distance(a, b)) .sorted_by_key(|&(a, b)| distance(a, b))
} }