제출 #1330047

#제출 시각아이디문제언어결과실행 시간메모리
1330047realdr4nnekFoehn Phenomena (JOI17_foehn_phenomena)C++20
100 / 100
75 ms7376 KiB
#include <bits/stdc++.h>
#define ll long long
using namespace std;

int N, Q, S, T, L, R, X;
ll A[200001], diff[200002];

int main() {
    ios_base::sync_with_stdio(0); cin.tie(0); cout.tie(0);
    cin >> N >> Q >> S >> T >> A[0];
    ll TEMP = 0;
    for (int i = 1; i <= N; i++) {
        cin >> A[i];
        diff[i] = A[i] - A[i - 1];
        if (diff[i] < 0) TEMP -= diff[i] * T;
        else TEMP -= diff[i] * S;
    }

    while (Q--) {
        cin >> L >> R >> X;

        if (diff[L] < 0) TEMP += diff[L] * T;
        else TEMP += diff[L] * S;
        diff[L] += X;
        if (diff[L] < 0) TEMP -= diff[L] * T;
        else TEMP -= diff[L] * S;
        
        if (R < N) {
            if (diff[R + 1] < 0) TEMP += diff[R + 1] * T;
            else TEMP += diff[R + 1] * S;
            diff[R + 1] -= X;
            if (diff[R + 1] < 0) TEMP -= diff[R + 1] * T;
            else TEMP -= diff[R + 1] * S;
        }

        cout << TEMP << '\n';
    }
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...