Submission #51505

#TimeUsernameProblemLanguageResultExecution timeMemory
51505mergesortFoehn Phenomena (JOI17_foehn_phenomena)C++14
100 / 100
185 ms7588 KiB
#include<bits/stdc++.h> using namespace std; #define int long long int a[200005],b[200005]; signed main() { ios_base::sync_with_stdio(0); cin.tie(0); int n,q,s,t,ans=0; cin>>n>>q>>s>>t; for(int i=0;i<=n;++i){ cin>>a[i]; } for(int i=1;i<=n;++i){ b[i]=a[i]-a[i-1]; if(a[i]>a[i-1])ans-=(a[i]-a[i-1])*s; else ans-=(a[i]-a[i-1])*t; } while(q--){ int l,r,val; cin>>l>>r>>val; if(r!=n)ans+=b[r+1]*((b[r+1]>0)?s:t); if(l)ans+=b[l]*((b[l]>0)?s:t); if(r!=n)b[r+1]-=val; if(l)b[l]+=val; ans-=b[r+1]*((b[r+1]>=0)?s:t); ans-=b[l]*((b[l]>=0)?s:t); cout<<ans<<'\n'; } }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...