Candy
来源:互联网 发布:电影票软件 编辑:程序博客网 时间:2024/05/02 05:10
Candy
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?
int candy(vector<int> &ratings) { const int n=ratings.size(); vector<int> increment(n); //左右各扫描一遍 for(int i=1,inc=1;i<n;i++) { if(ratings[i]>ratings[i-1]) increment[i] =max(inc++,increment[i]); else inc =1; } for(int i=n-2,inc =1;i>=0;i--) if(ratings[i]>ratings[i+1]) increment[i] =max(inc++,increment[i]); else inc =1; return accumulate(&increment[0],&increment[0]+n,n); }
0 0
- Candy
- Candy
- Candy
- Candy
- Candy
- Candy
- Candy
- Candy
- Candy
- Candy
- Candy
- Candy
- Candy
- candy
- Candy
- Candy
- Candy
- Candy
- 如何成为成功的Android游戏开发
- 轻量级http服务器nginx
- 字符串翻转
- 连续x次奇数(n+2*x)是合数的算法题暴力算法
- HTML 通过GIF实现loading动画(非进度条版)。
- Candy
- sql loader的简单用法
- Best practices for Foreign Servers
- 常用排序算法之JavaScript实现
- 【C#】项目1--斐波那契数列(人生中第一个C#程序)
- 【信息安全系列】RedHat Linux常用安全检查标准
- 侧滑、、、mark一下、、、
- sublime下的less2css使用
- user版本打开kernel的log