Submission #540352

#TimeUsernameProblemLanguageResultExecution timeMemory
540352phathnvPotatoes and fertilizers (LMIO19_bulves)C++11
100 / 100
137 ms13144 KiB
#include <bits/stdc++.h> using namespace std; const int N = 5e5 + 10; int n; long long a[N]; int main() { ios_base::sync_with_stdio(0); cin.tie(0); cin >> n; for (int i = 1; i <= n; ++i) { int x, y; cin >> x >> y; a[i] = a[i - 1] + (x - y); } long long ans = 0; for (int i = 1; i <= n; ++i) { if (a[i] < 0) { ans += (-a[i]); a[i] = 0; } if (a[i] > a[n]) { ans += a[i] - a[n]; a[i] = a[n]; } } priority_queue<int> pq; pq.push(a[1]); for (int i = 2; i <= n; ++i) { ans += max(0ll, pq.top() - a[i]); pq.push(a[i]); pq.push(a[i]); pq.pop(); } cout << ans << '\n'; return 0; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...