Submission #669170

#TimeUsernameProblemLanguageResultExecution timeMemory
669170Darren0724Foehn Phenomena (JOI17_foehn_phenomena)C++17
100 / 100
115 ms13156 KiB
#include<bits/stdc++.h>
using namespace std;
#define int long long
signed main(){
    ios_base::sync_with_stdio(false);
    cin.tie(0);
    int n,q;cin>>n>>q;
    int s,t;cin>>s>>t;
    vector<int> v(n+2),d(n+2);
    for(int i=0;i<=n;i++){
        cin>>v[i];
    }
    for(int i=1;i<=n;i++){
        d[i]=v[i]-v[i-1];
    }
    s=-s;
    t=-t;
    int ans=0;
    for(int i=1;i<=n;i++){
        ans+=(d[i]>=0?s*d[i]:t*d[i]);
    }
    for(int i=0;i<q;i++){
        int a,b,c;cin>>a>>b>>c;
        b++;
        ans-=(d[a]>=0?s*d[a]:t*d[a]);
        d[a]+=c;
        ans+=(d[a]>=0?s*d[a]:t*d[a]);
        if(b<=n){
            ans-=(d[b]>=0?s*d[b]:t*d[b]);
            d[b]-=c;
            ans+=(d[b]>=0?s*d[b]:t*d[b]);
        }
        cout<<ans<<'\n';
    }

    return 0;
}

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