1526.形成目标数组的子数组最少增加次数
思路:简化问题,首先对第i个元素进行处理,当第i个元素满足要求时,那么它的右边一个元素(即第i+1个元素)是不是也可以增加target[i]。如果target[i+1]<=target[i],第i+1个元素就无需操作了;如果target[i+1]>target[i],第i+1个元素就需要再进行target[i+1]-target[i]次操作。后续元素也是如此。
class Solution {
public:
int minNumberOperations(vector<int>& target) {
int sum=target[0];
for(int i=1;i<target.size();i++){
sum+=max(target[i]-target[i-1],0);
}
return sum;
}
};