leetcode Candy
来源:互联网 发布:淘宝新势力周怎么报名 编辑:程序博客网 时间:2024/05/28 16:12
此问题可以遍历三遍ratings解决:
第一遍遍历从左向右,若小孩 i 与其左边的小孩 i-1 满足如下: 若 i 的级别比 i-1 大,则candyNum[i] = candyNum[i-1]+1;
第二遍从右向左遍历,若小孩 i 与其右边的小孩 i+1 满足如下: 若 I 的级别比 i+1大且candyNum[i] <= candyNum[i+1] , 则candyNum[i] = candyNum[i+1]+1;
第三遍遍历求出总数
代码
class Solution{public:int candy(vector<int> &ratings){vector<int> candyNum(ratings.size(), 1);for(int i = 1; i < ratings.size(); ++i){if(ratings[i]>ratings[i-1]){candyNum[i] = candyNum[i-1]+1;}}int num = 0;for(int i = ratings.size()-2; i >= 0; --i){if(ratings[i]>ratings[i+1]&&candyNum[i]<=candyNum[i+1])candyNum[i] = candyNum[i+1] + 1;}for(int i = 0; i < ratings.size(); ++i)num += candyNum[i];return num;}};
0 0
- Leetcode: Candy
- LeetCode:Candy
- [leetcode]Candy
- Leetcode: Candy
- 【leetcode】Candy
- LeetCode:Candy
- [LeetCode] Candy
- [LeetCode]Candy
- [LeetCode] Candy
- 【LeetCode】Candy
- LeetCode | Candy
- Leetcode: Candy
- Candy - LeetCode
- leetcode Candy
- LeetCode Candy
- candy leetcode
- Candy -- LeetCode
- [LeetCode] Candy
- JDK中rt.jar、tools.jar和dt.jar作用
- Linux设备驱动程序学习笔记07:字符设备驱动程序V
- 黑马程序员—创建线程的二种方式
- poj 2503 Babelfish (map,trie 树)
- 使用CSS3 Flexbox布局
- leetcode Candy
- js通过cordova调用本地代码
- 简述Java的发展史
- linux mysql 操作命令
- ldd3第二章-----建立内核源码树,编译模块
- 亲密关系里的安全感
- iOS设计模式(02):单例模式
- python操作redis
- poj1002~简单排序题