#include <bits/stdc++.h>
using namespace std;
using ll = long long;
int main() {
ios::sync_with_stdio(false);
cin.tie(nullptr);
int N, Q;
ll S, T;
cin >> N >> Q >> S >> T;
vector<ll> A(N + 1);
for (int i = 0; i <= N; i++) cin >> A[i];
vector<ll> d(N + 1);
for (int i = 1; i <= N; i++) d[i] = A[i] - A[i - 1];
auto contrib = [&](ll x) -> ll {
if (x > 0) return -S * x;
return -T * x;
};
ll ans = 0;
for (int i = 1; i <= N; i++) ans += contrib(d[i]);
while (Q--) {
int L, R;
ll X;
cin >> L >> R >> X;
ans -= contrib(d[L]);
d[L] += X;
ans += contrib(d[L]);
if (R + 1 <= N) {
ans -= contrib(d[R + 1]);
d[R + 1] -= X;
ans += contrib(d[R + 1]);
}
cout << ans << "\n";
}
return 0;
}
| # | Verdict | Execution time | Memory | Grader output |
|---|
| Fetching results... |
| # | Verdict | Execution time | Memory | Grader output |
|---|
| Fetching results... |
| # | Verdict | Execution time | Memory | Grader output |
|---|
| Fetching results... |