Submission #1144439

#TimeUsernameProblemLanguageResultExecution timeMemory
1144439aagiiFoehn Phenomena (JOI17_foehn_phenomena)C++20
100 / 100
217 ms67524 KiB
#include <bits/stdc++.h>
#define ll long long
#define pb push_back
#define ff first
#define ss second
#define mp make_pair
#define SZ size()
#define harderahhh ios::sync_with_stdio(0); cin.tie(0); cout.tie(0)
const int N = 1000000007;
using namespace std;
ll x, l, y, t, z, hp, sus1, sus2, g, sus, sus3, bruh, bruh1, bruh2, bruh3, dog1, h, r, dog2, dog3, ck1, ck2, ck3, dog, i, p, j, q, m, a[696969], b[696969], c[696969], n, k, d[696969], e[696969], x1[696969], x2[696969], joy[1005][1005], pp[1005][1005], di[1234566], de[1234566];
string s1, s2, s3, s4, s5, s6, s7, s8, s9, rep1, rep2, rep, s, hsr[696969], gi[696969];
char c1, c2, oon, hi[1005][1005], na[1005][1005], cc[696969];
pair <ll, ll> goku[696969];
vector <ll> aag[500005], eeg[200005], ski, bidi;
bool vis[200005];
map <ll, ll> mm;
map<pair<ll,ll>,ll> wii;
set <ll> baka, kk;
void dfs(ll x) {
    
}
int main() { 
    harderahhh;
    cin >> n >> q >> l >> r;
    for (i = 0; i <= n; i++) {
        cin >> a[i];
    }
    for (i = 1; i <= n; i++) {
        b[i] = a[i]-a[i-1];
    }
    for (i = 1; i <= n; i++) {
        if (b[i] > 0) {
            sus -= b[i]*l;
        } else {
            sus -= b[i]*r;
        }
    }
    while (q--) {
        cin >> x >> y >> k;
        if (b[x] > 0) {
            sus += b[x]*l;
        } else {
            sus += b[x]*r;
        }
        b[x] += k;
        if (b[x] > 0) {
            sus -= b[x]*l;
        } else {
            sus -= b[x]*r;
        }
        if (y < n) {
            if (b[y+1] > 0) {
                sus += b[y+1]*l;
            } else {
                sus += b[y+1]*r;
            }
            b[y+1] -= k;
            if (b[y+1] > 0) {
                sus -= b[y+1]*l;
            } else {
                sus -= b[y+1]*r;
            }
        }
        cout << sus << endl;
    }
}
    
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...