Candy
来源:互联网 发布:淘宝什么返利网最好 编辑:程序博客网 时间:2024/06/09 18:35
There are N children standing in a line. Each child is assigned a rating value.
You are giving candies to these children subjected to the following requirements:
- Each child must have at least one candy.
- Children with a higher rating get more candies than their neighbors.
What is the minimum candies you must give?
思路: 先从前往后, 如果rating比前面的那个大, 就在前面那个基础上加1, 否则为1.
再从后往前,如果rating 比后面那个大, 但是candy 没有比后面那个大, 就要在后面那个基础上加1.
易错点: 记住后面往前时候, if(ratings[i] > ratings[i + 1] && candys[i] <= candys[i + 1])才能 candys[i] = candys[i + 1] + 1;
public class Solution { public int candy(int[] ratings) { int n = ratings.length; int[] candys = new int[n]; int ret = 0; candys[0] = 1; for(int i = 1; i < n; i++){ if(ratings[i] > ratings[i - 1]){ candys[i] = candys[i - 1] + 1; }else{ candys[i] = 1; } } ret = candys[n - 1]; for(int i = n - 2; i >= 0; i--){ if(ratings[i] > ratings[i + 1] && candys[i] <= candys[i + 1]){ candys[i] = candys[i + 1] + 1; } ret += candys[i]; } return ret; }}
0 0
- Candy
- Candy
- Candy
- Candy
- Candy
- Candy
- Candy
- Candy
- Candy
- Candy
- Candy
- Candy
- Candy
- candy
- Candy
- Candy
- Candy
- Candy
- OpenCV基础篇之查找表
- CentOS上编译安装OpenCV-2.3.1与ffmpeg-2.1.2
- OpenCV基础篇之读取显示图片
- OpenCV基础篇之像素操作对比度调节
- DSP/BIOS使用之初窥门径——滴答时钟及烧写Flash
- Candy
- PCB设计资料:看到最后才知道是福利
- LabVIEW上位机与串口通信
- CentOS配置smaba与Windows共享文件
- 三极管的电平转换及驱动电路分析
- 对功率谱的一点理解
- 数组的指针特性
- DSP-BIOS使用入门
- 使用Tcl脚本分配FPGA管脚