Skip to content

Commit c48d615

Browse files
committed
Miscellaneous cleanups
1 parent 285dfd7 commit c48d615

File tree

3 files changed

+9
-10
lines changed

3 files changed

+9
-10
lines changed

rs/src/day22.rs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
use std::iter;
1+
use std::iter::successors;
22
use std::sync::atomic::{AtomicU32, Ordering};
33

44
use itertools::Itertools;
@@ -14,7 +14,7 @@ pub fn part1(data: &str) -> u64 {
1414
data.lines()
1515
.collect::<Vec<_>>()
1616
.par_iter()
17-
.filter_map(|line| iter::successors(line.parse().ok(), |num| Some(step(*num))).nth(2000))
17+
.filter_map(|line| successors(line.parse().ok(), |num| Some(step(*num))).nth(2000))
1818
.map(Into::<u64>::into)
1919
.sum()
2020
}
@@ -26,7 +26,7 @@ pub fn part2(data: &str) -> u32 {
2626
.par_iter()
2727
.filter_map(|line| {
2828
let mut seen = [false; 19 * 19 * 19 * 19];
29-
iter::successors(line.parse().ok(), |num| Some(step(*num)))
29+
successors(line.parse().ok(), |num| Some(step(*num)))
3030
.take(2001)
3131
.map(|num| num % 10)
3232
.tuple_windows()

rs/src/day8.rs

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,10 @@
11
use std::collections::BTreeSet;
2-
use std::iter::once;
32

43
use itertools::Itertools;
54

65
fn solve<I>(data: &str, multiples: I) -> usize
76
where
8-
I: Clone + Iterator<Item = isize>,
7+
I: Clone + IntoIterator<Item = isize>,
98
{
109
let (mut height, mut width) = (0, 0);
1110
data.lines()
@@ -34,7 +33,7 @@ where
3433
.filter(move |point1| point0 != *point1)
3534
.flat_map(|(y1, x1)| {
3635
let (dy, dx) = (*y1 as isize - *y0 as isize, *x1 as isize - *x0 as isize);
37-
multiples.clone().map_while(move |i| {
36+
multiples.clone().into_iter().map_while(move |i| {
3837
Some((
3938
y1.wrapping_add_signed(i * dy),
4039
x1.wrapping_add_signed(i * dx),
@@ -49,7 +48,7 @@ where
4948
}
5049

5150
pub fn part1(data: &str) -> usize {
52-
solve(data, once(1))
51+
solve(data, [1])
5352
}
5453

5554
pub fn part2(data: &str) -> usize {

rs/src/day9.rs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
use std::cmp::min;
1+
use std::iter;
22

33
fn parse(data: &str) -> Vec<(usize, (u8, u8))> {
44
let mut iter = data
@@ -12,7 +12,7 @@ fn parse(data: &str) -> Vec<(usize, (u8, u8))> {
1212
})
1313
.chain([0])
1414
.fuse();
15-
std::iter::from_fn(move || iter.next().zip(iter.next()))
15+
iter::from_fn(move || iter.next().zip(iter.next()))
1616
.scan(0, |acc, (used, free)| {
1717
let offset = *acc;
1818
*acc += (used + free) as usize;
@@ -38,7 +38,7 @@ pub fn part1(data: &str) -> u64 {
3838
while free > 0 && id + 1 < *end {
3939
let id = *end - 1;
4040
let (_, (used2, _)) = data.get_mut(id).unwrap();
41-
let moved = min(free, *used2);
41+
let moved = free.min(*used2);
4242
sum += id as u64 * tri_range(offset as u64, moved as u64);
4343
offset += moved as usize;
4444
free -= moved;

0 commit comments

Comments
 (0)