rustgym 0.2.0

rustgym solutions
Documentation
struct Solution;

impl Solution {
    fn distribute_candies(mut candies: i32, num_people: i32) -> Vec<i32> {
        let mut i = 0;
        let n = num_people as usize;
        let mut res: Vec<i32> = vec![0; n];
        let mut gift = 0;
        while candies > 0 {
            gift = i32::min(gift + 1, candies);
            res[i] += gift;
            candies -= gift;
            i = (i + 1) % n;
        }
        res
    }
}

#[test]
fn test() {
    let candies = 7;
    let num_people = 4;
    let res = vec![1, 2, 3, 1];
    assert_eq!(Solution::distribute_candies(candies, num_people), res);
    let candies = 10;
    let num_people = 3;
    let res = vec![5, 2, 3];
    assert_eq!(Solution::distribute_candies(candies, num_people), res);
}