#include <bits/stdc++.h>
#define ll long long
using namespace std;
const int MAX=200005;
int N=4, Q=3;
ll A[MAX]={1,2,3,4};
ll A2[MAX];
ll ans;
ll dp[MAX];
int main(){
ios_base::sync_with_stdio(false);cin.tie(NULL);
cin>>N>>Q;
for (int i=0;i<N;i++) cin>>A[i];
for (int q=0;q<Q;q++){
int l,r,x;
cin>>l>>r>>x;
l--,r--;
for (int i=l;i<=r;i++) A[i]+=x;
vector<int> points;
points.push_back(A[0]);
for (int i=1;i<N-1;i++){
if ((min(A[i],min(A[i-1],A[i+1]))==A[i])||(max(A[i],max(A[i-1],A[i+1]))==A[i])){
points.push_back(A[i]);
}
}
points.push_back(A[N-1]);
dp[0]=0;
dp[1]=abs(points[0]-points[1]);
for (int i=2;i<points.size();i++){
dp[i]=max(dp[i-1],dp[i-2]+abs(points[i-1]-points[i]));
}
cout<<dp[points.size()-1]<<'\n';
}
}
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |