// a little hard.
class Solution {
public:
int candy(vector<int>& arr) {
int ans = 0;
vector<int>a(arr.size(), 1);
for(int i = 1; i < arr.size(); i++){
if(arr[i] > arr[i-1]){
a[i] = a[i - 1] + 1;
}
}
ans += a[arr.size() - 1];
for(int i = arr.size() - 2; i >= 0; i--){
if(arr[i] > arr[i + 1] && a[i] <= a[i + 1])
a[i] = a[i + 1] + 1;
ans += a[i];
}
return ans;
}
};

京公网安备 11010502036488号