diff options
author | Jack Sangdahl <jack@pngu.org> | 2025-03-10 00:36:13 -0600 |
---|---|---|
committer | Jack Sangdahl <jack@pngu.org> | 2025-03-10 00:36:13 -0600 |
commit | 7c60dee83b436e8e8a667bf9f191beced8de4fc3 (patch) | |
tree | eb7a24ee2067f92245c57bb118e85a1baf15df50 /min_falling_path_sum.rs | |
parent | 5d7cdc215e4ba1ec4cbb24c084cccb5e5e641468 (diff) | |
download | leetcode-master.tar.gz leetcode-master.zip |
Diffstat (limited to 'min_falling_path_sum.rs')
-rw-r--r-- | min_falling_path_sum.rs | 23 |
1 files changed, 0 insertions, 23 deletions
diff --git a/min_falling_path_sum.rs b/min_falling_path_sum.rs deleted file mode 100644 index 4b704c1..0000000 --- a/min_falling_path_sum.rs +++ /dev/null @@ -1,23 +0,0 @@ -struct Solution; - -impl Solution { - pub fn min_falling_path_sum(matrix: Vec<Vec<i32>>) -> i32 { - matrix.into_iter().reduce(|prev, mut curr| { - prev.into_iter().chain(std::iter::once(i32::MAX)).scan((i32::MAX, i32::MAX, i32::MAX), |(w1, w2, w3), c| { - *w1 = *w2; - *w2 = *w3; - *w3 = c; - Some(c.min(*w1).min(*w2)) - }).skip(1).zip(curr.iter_mut()).for_each(|(p, c)| *c += p); - curr - }).unwrap().into_iter().min().unwrap() - } -} - -fn main() { - let matrix = vec![ - vec![2,1,3], - vec![6,5,4], - vec![7,8,9]]; - print!("{}", Solution::min_falling_path_sum(matrix)); -} |