public class Solution {
    public int candy(int[] ratings) {
        if (ratings.length == 0)
            return 0;
        int len = ratings.length;
        int[] candy = new int[len];
        candy[0] = 1;
        for (int i = 1; i < len; i++)
            candy[i] = ratings[i] > ratings[i - 1]? candy[i - 1] + 1: 1;
        int sum = candy[len - 1];
        for (int i = len - 2; i >= 0; i--) {
            candy[i] = ratings[i] > ratings[i + 1]? candy[i] >= candy[i + 1] + 1? candy[i]: candy[i + 1] + 1: candy[i];
            sum += candy[i];
        }
        return sum;
    }
}