golang leetcode 1104. 分糖果 II

循环暴力求解。
自增取余求people下标

  idx = (idx + 1)%num_people

对于最后一个被分糖果的people,需要把多余且不够完全分的给加上

ret[idx] += candies + add

完整代码

func distributeCandies(candies int, num_people int) []int {
    add := 1
    ret := make([]int, num_people)
    idx := 0
    candies -= add
    for candies > 0 {
        ret[idx] += add
        add++
        idx = (idx + 1)%num_people
        candies -= add
    }
    ret[idx] += candies + add
    return ret
}

你可能感兴趣的:(golang leetcode 1104. 分糖果 II)