From bc2d3c972520096c234c309addabe77924951464 Mon Sep 17 00:00:00 2001 From: Maciej Jur Date: Tue, 6 Dec 2022 14:13:57 +0100 Subject: [PATCH] 2022 rust minor improvements --- 2022/rust/src/solutions/day02.rs | 4 ++-- 2022/rust/src/solutions/day04.rs | 4 ++-- 2022/rust/src/solutions/day06.rs | 15 ++++++--------- 3 files changed, 10 insertions(+), 13 deletions(-) diff --git a/2022/rust/src/solutions/day02.rs b/2022/rust/src/solutions/day02.rs index bc2dec2..c83fa0c 100644 --- a/2022/rust/src/solutions/day02.rs +++ b/2022/rust/src/solutions/day02.rs @@ -95,7 +95,7 @@ impl MatchResult { } -fn solve1(data: &Vec<(char, char)>) -> i32 { +fn solve1(data: &[(char, char)]) -> i32 { data.iter() .fold(0, |acc, (other, my)| { let my = Shape::from(my); @@ -104,7 +104,7 @@ fn solve1(data: &Vec<(char, char)>) -> i32 { }) } -fn solve2(data: &Vec<(char, char)>) -> i32 { +fn solve2(data: &[(char, char)]) -> i32 { data.iter() .fold(0, |acc, (other, result)| { let result = MatchResult::from(result); diff --git a/2022/rust/src/solutions/day04.rs b/2022/rust/src/solutions/day04.rs index 4f9e769..a073ae9 100644 --- a/2022/rust/src/solutions/day04.rs +++ b/2022/rust/src/solutions/day04.rs @@ -12,7 +12,7 @@ pub fn run() -> () { } -fn solve1(data: &Vec<((i32, i32), (i32, i32))>) -> usize { +fn solve1(data: &[((i32, i32), (i32, i32))]) -> usize { data.iter() .filter(|((s1, e1), (s2, e2))| s1 <= s2 && e2 <= e1 || s2 <= s1 && e1 <= e2 @@ -20,7 +20,7 @@ fn solve1(data: &Vec<((i32, i32), (i32, i32))>) -> usize { .count() } -fn solve2(data: &Vec<((i32, i32), (i32, i32))>) -> usize { +fn solve2(data: &[((i32, i32), (i32, i32))]) -> usize { data.iter() .filter(|((s1, e1), (s2, e2))| s1 <= e2 && s2 <= e1 diff --git a/2022/rust/src/solutions/day06.rs b/2022/rust/src/solutions/day06.rs index ee842d3..dfb3f47 100644 --- a/2022/rust/src/solutions/day06.rs +++ b/2022/rust/src/solutions/day06.rs @@ -11,15 +11,15 @@ pub fn run() -> () { } -fn solve1(data: &Vec) -> usize { - marker_for(&data, 4) +fn solve1(data: &[char]) -> usize { + marker_for(data, 4) } -fn solve2(data: &Vec) -> usize { - marker_for(&data, 14) +fn solve2(data: &[char]) -> usize { + marker_for(data, 14) } -fn marker_for(data: &Vec, window_len: usize) -> usize { +fn marker_for(data: &[char], window_len: usize) -> usize { data.windows(window_len) .enumerate() .filter_map(|(idx, window)| window.iter() @@ -34,10 +34,7 @@ fn marker_for(data: &Vec, window_len: usize) -> usize { fn parse_data(data: Vec) -> Vec { data.into_iter() .next() - .map(|char| char - .chars() - .collect() - ) + .map(|char| char.chars().collect()) .unwrap() }