Submission #1229248

#TimeUsernameProblemLanguageResultExecution timeMemory
1229248gry3125Bikeparking (EGOI24_bikeparking)C++20
59 / 100
1106 ms225824 KiB
#include <bits/stdc++.h>
#define pb push_back
#define all(v) (v).begin(),(v).end()
#define ll long long int
using namespace std;

int main() {
    ll n; cin >> n; ll r = 0;
    multiset<ll> x; deque<ll> y;
    for (int i = 0; i < n; i++) {
        ll xi; cin >> xi; 
        while (xi--) x.insert(i);
    }
    for (int i = 0; i < n; i++) {
        ll yi; cin >> yi;
        while (yi--) {
            if (x.lower_bound(i) == x.begin()) {
                y.push_front(i); continue;
            }
            x.erase(prev(x.lower_bound(i))); r++;
        }
    }
    deque<ll> nx;
    for (auto w : x) nx.pb(w);
    
    for (int i = 0; i < y.size(); i++) {
        if (y[i] < nx[i]) r--;
        if (y[i] > nx[i]) r++;
    }

    cout << r;
    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...