let 135. Candy

主题思想: 正向来一次,反向来一次。

AC 代码:

class Solution {
    public int candy(int[] ratings) {

       if(ratings==null)return 0;
        if(ratings.length<=1) return ratings.length;
        int n=ratings.length;
        int [] nums=new int[n];
        Arrays.fill(nums,1);
        for(int i=1;i<n;i++){
            if(ratings[i]>ratings[i-1])nums[i]=nums[i-1]+1;
        }
        for(int i=n-2;i>=0;i--){
            if(ratings[i]>ratings[i+1])nums[i]=Math.max(nums[i],nums[i+1]+1);
        }
        int total=0;
        for(int i:nums)total+=i;
        return total;
    }
}

猜你喜欢

转载自blog.csdn.net/the_conquer_zzy/article/details/79647496