#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
typedef long double ld;
#define pb push_back
int main(){
int n; cin >> n;
vector<int> slot(n), ppl(n);
for(int i=0;i<n;i++) cin >> slot[i];
for(int i=0;i<n;i++) cin >> ppl[i];
ll ans = 0;
int ind = 0;
for(int i=0;i<n;i++){
ind = max(i+1, ind);
while(slot[i] && ind < n) {
int give = min(slot[i], ppl[ind]);
ppl[ind] -= give;
slot[i] -= give;
ans += give;
if(ppl[ind] == 0) ind++;
}
if(ind == n) break;
}
for(int i=0;i<n;i++){
int give = min(slot[i], ppl[i]);
slot[i] -= give;
ppl[i] -= give;
}
cout << ans - accumulate(ppl.begin(), ppl.end(), 0LL) << endl;
}
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |