diff --git a/src/day1.rs b/src/day1.rs index ef710f3..c72a3a0 100644 --- a/src/day1.rs +++ b/src/day1.rs @@ -11,19 +11,21 @@ pub fn run() { fn part1(calibration_input: &str) -> usize { calibration_input - .split("\n") + .split('\n') .map(|line| { - let digits = line.chars().filter(|c| c.is_digit(10)).collect::(); + let digits = line + .chars() + .filter(|c| c.is_ascii_digit()) + .collect::(); if digits.len() == 1 { digits.parse::().unwrap() * 11 } else { - let tens = digits.chars().nth(0).unwrap().to_digit(10).unwrap(); + let tens = digits.chars().next().unwrap().to_digit(10).unwrap(); let ones = digits.chars().last().unwrap().to_digit(10).unwrap(); (tens * 10 + ones) as usize } }) - .into_iter() .sum() } @@ -41,7 +43,7 @@ fn part2(calibration_input: &str) -> usize { ]; calibration_input - .split("\n") + .split('\n') .map(|line| { let mut index_and_digit: Vec<(usize, usize)> = vec![]; @@ -66,7 +68,6 @@ fn part2(calibration_input: &str) -> usize { index_and_digit[0].1 * 10 + index_and_digit.last().unwrap().1 } }) - .into_iter() .sum() }