Submission #1316780

#TimeUsernameProblemLanguageResultExecution timeMemory
1316780AgageldiFoehn Phenomena (JOI17_foehn_phenomena)C++20
0 / 100
68 ms5172 KiB
#include <bits/stdc++.h> using namespace std; using ll = long long; #define MAXN 500005 ll a[MAXN], ans; int main() { ios::sync_with_stdio(false); cin.tie(nullptr); int N, Q; ll S, T; cin >> N >> Q >> S >> T; for(int i = 0; i <= N; i++) { cin >> a[i]; if(!i)continue; int p = abs(a[i] - a[i - 1]); ans += p * (a[i] <= a[i - 1] ? T : -S); } // cout << ans << '\n'; for(int i = 1; i <= Q; i++) { int l, r, vl; cin >> l >> r >> vl; int p = abs(a[l] - a[l - 1]); ans -= p * (a[l] <= a[l - 1] ? T : -S); p = abs(a[r] - a[r + 1]); if(r + 1 <=N){ ans -= p * (a[r + 1] <= a[r] ? T : -S); } a[l] += vl; if(l!=r) a[r] += vl; if(r + 1 <= N) { p = abs(a[r] - a[r + 1]); ans += p * (a[r + 1] <= a[r] ? T : -S); } p = abs(a[l] - a[l - 1]); ans += p * (a[l] <= a[l - 1] ? T : -S); cout << ans << '\n'; } return 0; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...