Submission #162308

#TimeUsernameProblemLanguageResultExecution timeMemory
162308nvmdavaFoehn Phenomena (JOI17_foehn_phenomena)C++17
100 / 100
222 ms7992 KiB
#include <bits/stdc++.h>
using namespace std;
#define ll long long
#define ff first
#define ss second
#define pb push_back
mt19937 rng(chrono::steady_clock::now().time_since_epoch().count());
#define N 200005
#define INF 0x3f3f3f3f
#define MOD 1000000007LL

ll a[N];

int main(){
    ios_base::sync_with_stdio(0);
    cin.tie(0);
    cout.tie(0);

    int n, q;
    ll s, t;
    cin>>n>>q>>s>>t;
    for(int i = 0; i <= n; i++) 
    	 cin>>a[i];
    ll T = 0;
    for(int i = n; i >= 1; i--){
    	a[i] -= a[i - 1];
    	T += (a[i] > 0 ? s : t) * -a[i];
    }


    while(q--){
    	int l, r;
    	ll x;
    	cin>>l>>r>>x;
    	++r;
    	T -= (a[l] > 0 ? s : t) * -a[l];
    	a[l] += x;
    	T += (a[l] > 0 ? s : t) * -a[l];
    	if(r <= n){
    		T -= (a[r] > 0 ? s : t) * -a[r];
    		a[r] -= x;
    		T += (a[r] > 0 ? s : t) * -a[r];
    	}
    	cout<<T<<'\n';
    }

    
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...