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

Candy

时间:2014-09-06 00:58:22      阅读:352      评论:0      收藏:0      [点我收藏+]

标签:style   blog   color   io   for   div   sp   log   on   

题目大概就是考察,如何找到山峰的峰值。从左到右扫一遍,再从右到左扫一遍,确定每个位置的峰值。

 1 class Solution {
 2 public:
 3     int Max(int a,int b)
 4     {
 5        return a>b?a:b;
 6      }
 7     int candy(vector<int> &ratings) {
 8         if(ratings.size()==0)

 9         return 0;
10        if(ratings.size()==1)
11         return 1;
12 
13        int num = ratings.size();
14        int cnt = 1;
15        int sum = 0;
16        vector<int> v(num,1);
17        for(int i=0;i<num-1;i++)
18        {
19           if(ratings[i]<ratings[i+1])
20               v[i+1] = ++cnt;
21           else
22             cnt =1;
23        }
24 
25        cnt = 1;
26        for(int j=num-1;j>0;j--)
27        {
28            if(ratings[j]<ratings[j-1])
29             v[j-1] = Max(++cnt,v[j-1]);
30             else
31                 cnt = 1;
32        }
33        for(int i=0;i<num;i++)
34         sum += v[i];
35     
36        return sum;
37     }
38 };

 

Candy

标签:style   blog   color   io   for   div   sp   log   on   

原文地址:http://www.cnblogs.com/ZhangYushuang/p/3958892.html

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