#include <bits/stdc++.h>
using namespace std;
long long solve(vector<long long> a){
int n=a.size();
vector<long long> dp(n,0);
long long mxp=0;
long long mxm=-1e18;
for(int i=1;i<n;++i){
dp[i]=dp[i-1];
dp[i]=max(dp[i],mxp-a[i]);
dp[i]=max(dp[i],mxm+a[i]);
mxp=max(mxp,dp[i-1]+a[i]);
mxm=max(mxm,dp[i-1]-a[i]);
}
return dp[n-1];
}
int main()
{
int n,q;
cin>>n>>q;
vector<long long> a(n+1);
for(int i=1;i<=n;++i){
cin>>a[i];
}
while(q--){
int l,r,x;
cin>>l>>r>>x;
for(int i=l;i<=r;++i){
a[i]+=x;
}
cout<<solve(a)<<'\n';
}
return 0;
}
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |