237482026-01-28 18:13:32algoproBányász RPG (40 pont)cpp17Wrong answer 36/4068ms1092 KiB
// UUID: eb119b5d-50c4-4b49-8658-1f001ebc6b23
#include <bits/stdc++.h>
using namespace std;

int main() {
	int n; cin >> n;
    vector<pair<int, int>> 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.rbegin(), l.rend());

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

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

            if (l[i].second == 0) i++;
        }
    }

    cout << t;
}
SubtaskSumTestVerdictTimeMemory
base36/40
1Accepted0/01ms316 KiB
2Accepted0/012ms508 KiB
3Accepted2/21ms508 KiB
4Accepted2/21ms316 KiB
5Accepted2/29ms508 KiB
6Accepted2/221ms652 KiB
7Accepted2/23ms316 KiB
8Accepted2/24ms508 KiB
9Accepted3/31ms500 KiB
10Accepted3/31ms316 KiB
11Accepted3/31ms336 KiB
12Accepted3/31ms400 KiB
13Accepted4/41ms316 KiB
14Accepted4/41ms316 KiB
15Wrong answer0/237ms804 KiB
16Accepted2/250ms1012 KiB
17Wrong answer0/241ms840 KiB
18Accepted2/268ms1092 KiB