#include <vector>
class Solution {
public:
/**
* pick candy
* @param arr int整型vector the array
* @return int整型
*/
vector<int>nums;
int candy(vector<int>& arr) {
// write code here
nums.resize(arr.size(),1);//默认全都给一个
for(int i=1;i<arr.size();i++){//从前往后 如果后面那个大的话,就在前一个基础上多分一个
if(arr[i]>arr[i-1]) nums[i]=nums[i-1]+1;
}
for(int i=arr.size()-1;i>0;i--){//从后往前 如果前面那个大的话 取本身和后一个基础上加1的较大值
if(arr[i-1]>arr[i]) nums[i-1]=max(nums[i-1],nums[i]+1);
}
int ans=0;
for(int i=0;i<nums.size();i++){
ans+=nums[i];
}
return ans;
}
};