码迷,mamicode.com
首页 > 其他好文 > 详细

LeetCode 1103. Distribute Candies to People (分糖果 II)

时间:2019-09-16 10:28:44      阅读:102      评论:0      收藏:0      [点我收藏+]

标签:mem   div   less   and   ast   重复   color   依次   目标   

题目标签:Math

  题目让我们分发糖果,分的糖果从1 开始依次增加,直到分完。

  for loop可以计数糖果的数量,直到糖果发完。但是还是要遍历array 给people 发糖,这里要用到 index = (本轮分糖果的量 % people 的人数)糖果的数量从0 开始计数,这样的话,index 就会一直重复遍历 array,具体看code。

 

Java Solution:

Runtime:  1ms, faster than 90.53% 

Memory Usage: 33.8 MB, less than 100.00%

完成日期:07/15/2019

关键点:利用%重复遍历array

class Solution {
    public int[] distributeCandies(int candies, int num_people) {
        int[] people = new int[num_people];
        
        for(int give = 0; candies > 0; candies -= give) {
            people[give % num_people] += Math.min(candies, ++give);
        }
        
        return people;
    }
}

参考资料:LeetCode discuss

LeetCode 题目列表 - LeetCode Questions List

题目来源:https://leetcode.com/

LeetCode 1103. Distribute Candies to People (分糖果 II)

标签:mem   div   less   and   ast   重复   color   依次   目标   

原文地址:https://www.cnblogs.com/jimmycheng/p/11525277.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!