// submit di https://oj.uz/problem/view/JOI17_foehn_phenomena
#include<bits/stdc++.h>
using namespace std;
#define int long long
signed main(){
int n,qu,s,t;
cin>>n>>qu>>s>>t;
int a[n+1];
int diff[n+1];
for(int q=0;q<=n;q++)cin>>a[q];
int ans=0;
for(int q=1;q<=n;q++){
diff[q]=a[q-1]-a[q];
if(diff[q]<0){
ans+=diff[q]*s;
}
else{
ans+=diff[q]*t;
}
}
while(qu--){
int l,r,x;
cin>>l>>r>>x;
if(diff[l]>0){
ans-=diff[l]*t;
}
else{
ans-=diff[l]*s;
}
diff[l]-=x;
if(diff[l]>0){
ans+=diff[l]*t;
}
else{
ans+=diff[l]*s;
}
if(r<n){
if(diff[r+1]>0){
ans-=diff[r+1]*t;
}
else{
ans-=diff[r+1]*s;
}
diff[r+1]+=x;
if(diff[r+1]>0){
ans+=diff[r+1]*t;
}
else{
ans+=diff[r+1]*s;
}
}
cout<<ans<<endl;
}
}
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |