解释: 你可以分别给这三个孩子分发 2、1、2 颗糖果。 示例2 输入: [1,2,2] 输出: 4 解释: 你可以分别给这三个孩子分发 1、2、1 颗糖果。 第三个孩子只得到 1 颗糖果,这已满足上述两个条件 解题思路 两个数组left和right分别记录从左向右规则和从右向左规则时,每个孩子应该分的糖果数。 题目要求即...
遍历完之后还要反着再看一遍后邻居,如果比后邻居评分高,且糖数还不如后邻居多,那么就要设置成后邻居糖数+1。本质上就是先遍历一次,分别保证评分满足和左边的邻居比,之后再遍历一次,保证评分满足和右边的邻居比。最后把每个人手里糖数加起来就是结果。 Java classSolution {publicintcandy(int[] ratings) {intle...
Java实现LeetCode135分发糖果 Java实现LeetCode135分发糖果135. 分发糖果 ⽼师想给孩⼦们分发糖果,有 N 个孩⼦站成了⼀条直线,⽼师会根据每个孩⼦的表现,预先给他们评分。你需要按照以下要求,帮助⽼师给这些孩⼦分发糖果:每个孩⼦⾄少分配到 1 个糖果。相邻的孩⼦中,评分⾼的孩⼦必须...