rustgym 0.2.0

rustgym solutions
Documentation
struct Solution;

impl Solution {
    fn minimum_total(triangle: Vec<Vec<i32>>) -> i32 {
        let n = triangle.len();
        let mut dp = vec![vec![0; n + 1]; 2];
        for i in (0..n).rev() {
            for j in 0..=i {
                dp[i % 2][j] = triangle[i][j] + dp[(i + 1) % 2][j].min(dp[(i + 1) % 2][j + 1]);
            }
        }
        dp[0][0]
    }
}

#[test]
fn test() {
    let triangle = vec_vec_i32![[2], [3, 4], [6, 5, 7], [4, 1, 8, 3]];
    let res = 11;
    assert_eq!(Solution::minimum_total(triangle), res);
}