Submission #1159642

#TimeUsernameProblemLanguageResultExecution timeMemory
1159642brover29Foehn Phenomena (JOI17_foehn_phenomena)C++17
30 / 100
1095 ms2036 KiB
#include <bits/stdc++.h> //qwerty47924692 using namespace std; using ll = long long; const ll N=2e5+29; const string br="617283"; #define sz(a)(ll)a.size() #define f first #define s second ll n,a[N],q,t,s,ans; void upd(ll i,ll x){ if(a[i-1]<a[i]&&i)ans+=x*abs(a[i]-a[i-1])*s; if(a[i-1]>a[i]&&i)ans+=x*abs(a[i]-a[i-1])*t; if(a[i]<a[i+1]&&i<n)ans+=x*abs(a[i+1]-a[i])*s; if(a[i]>a[i+1]&&i<n)ans+=x*abs(a[i+1]-a[i])*t; } int main(){ ios_base::sync_with_stdio(0); cin.tie(0); cin>>n>>q>>s>>t; n++; for(ll i=0;i<n;i++){ cin>>a[i]; upd(i,1); }while(q--){ ll l,r,x; cin>>l>>r>>x; upd(l,-1); upd(r,-1); for(ll i=l;i<=r;i++)a[i]+=x; upd(l,1); upd(r,1); ans=0; for(ll i=1;i<n;i++){ ans+=abs(a[i]-a[i-1])*(a[i-1]<a[i] ? -s : t); // cout<<a[i]<<' '; } cout<<ans<<'\n'; } }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...