rustgym 0.2.0

rustgym solutions
Documentation
struct Solution;
use std::collections::HashMap;

impl Solution {
    fn least_bricks(wall: Vec<Vec<i32>>) -> i32 {
        let n = wall.len();
        let w: i32 = wall[0].iter().sum();
        let mut hm: HashMap<i32, usize> = HashMap::new();
        for row in wall {
            let mut sum = 0;
            for x in row {
                sum += x;
                *hm.entry(sum).or_default() += 1;
            }
        }
        let mut max = 0;
        for (k, v) in hm {
            if k != w {
                max = max.max(v);
            }
        }
        (n - max) as i32
    }
}

#[test]
fn test() {
    let wall = vec_vec_i32![
        [1, 2, 2, 1],
        [3, 1, 2],
        [1, 3, 2],
        [2, 4],
        [3, 1, 2],
        [1, 3, 1, 1]
    ];
    let res = 2;
    assert_eq!(Solution::least_bricks(wall), res);
}