Submission #1207623

#TimeUsernameProblemLanguageResultExecution timeMemory
1207623trimkusBikeparking (EGOI24_bikeparking)C++20
100 / 100
82 ms3912 KiB
#include <bits/stdc++.h> using namespace std; int main() { //~ ifstream cin("input.txt"); int n; cin >> n; vector<int> a(n), b(n); for (int i = 0; i < n; ++i) { cin >> a[i]; } for (int i = 0; i < n; ++i) { cin >> b[i]; } stack<int> st; int res1 = 0, res2 = 0; for (int i = 0; i < n; ++i) { if (i && a[i - 1]) st.push(i - 1); while (st.size() && b[i]) { int j = st.top(); int take = min(b[i], a[j]); b[i] -= take; a[j] -= take; res1 += take; if (a[j] == 0) st.pop(); } } for (int i = 0; i < n; ++i) { int take = min(a[i], b[i]); a[i] -= take; b[i] -= take; res2 += b[i]; } cout << res1 - res2 << "\n"; }
#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...