237512026-01-28 18:20:44algoproBányász RPG (40 pont)cpp17Elfogadva 40/4068ms1588 KiB
// UUID: 1054288f-0840-4391-9fda-81d515c5a0c1
#include <bits/stdc++.h>
#include <csetjmp>
using namespace std;

int main() {
	int n; cin >> n;
    vector<pair<long long, long long>> l(n);
    for (int i = 0; i < n; i++) {
        cin >> l[i].first;
    }
    for (int i = 0; i < n; i++) {
        cin >> l[i].second;
    }

    sort(l.begin(), l.end());

    long long xp = 0, t = 0;
    int i = 0, j = n-1;
    while (i <= j) {
        if (xp >= l[i].first) {
            xp += l[i].second;
            t += l[i].second;
            i++;
        } else {
            long long kell = l[i].first - xp;
            long long vesz = min(kell, l[j].second);

            t += 2 * vesz;
            xp += vesz;
            l[j].second -= vesz;

            if (l[j].second == 0) j--;
        }
    }

    cout << t;
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
base40/40
1Elfogadva0/01ms316 KiB
2Elfogadva0/012ms748 KiB
3Elfogadva2/21ms508 KiB
4Elfogadva2/21ms316 KiB
5Elfogadva2/29ms604 KiB
6Elfogadva2/221ms820 KiB
7Elfogadva2/23ms448 KiB
8Elfogadva2/24ms508 KiB
9Elfogadva3/31ms316 KiB
10Elfogadva3/31ms508 KiB
11Elfogadva3/31ms348 KiB
12Elfogadva3/32ms316 KiB
13Elfogadva4/42ms508 KiB
14Elfogadva4/41ms316 KiB
15Elfogadva2/237ms1076 KiB
16Elfogadva2/250ms1524 KiB
17Elfogadva2/241ms1076 KiB
18Elfogadva2/268ms1588 KiB