Submission #1232474

#TimeUsernameProblemLanguageResultExecution timeMemory
1232474yixuan19Bikeparking (EGOI24_bikeparking)C++20
40 / 100
1098 ms2628 KiB
//#include <bits/stdc++.h>
#include <iostream>
#include <vector>

using namespace std;
int main(){
    int N, slot, user;
    cin >> N;
    vector<int> slots(N+1,0);
    vector<int> users(N+1,0);
    for (int i = 0; i < N; ++i){
        cin >> slots[i];
    }
    for (int i = 0; i < N; ++i){
        cin >> users[i];
    }
    int sol = 0;
    for (int i = 1; i < N; ++i){
        for (int j = i-1; j >= 0; j--){
            if (users[i] >= slots[j]){
                users[i] -= slots[j];
                sol += slots[j];
                slots[j]= 0;
            }else{
                sol += users[i];
                slots[j] -= users[i];
                users[i] = 0; 
            }
            //cout<<sol<<' '<<users[i]-slots[j]<<endl;
        }
    }
    for (int i = 0; i <N; ++i){
        if (users[i] > 0 && slots[i] > 0){
            if (users[i] >= slots[i]){
                users[i] -= slots[i];
                slots[i]= 0;
            }else{
                slots[i] -= users[i];
                users[i] = 0;
            }
        }
    }
    for (int i = 0; i < N; ++i){
        sol-= users[i];
    }
    cout<<sol<<endl;
}
#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...