202092026-01-04 23:35:41algoproBányász RPG (40 pont)pypy3Futási hiba 32/4076ms32000 KiB
# UUID: f9ffc765-c41c-4ab9-929f-7044b00339d2
N = int(input())
exp = list(map(int, input().split()))
mat = list(map(int, input().split()))

time = 0
whole = []
experience = 0
cheapest = N - 1
expensive = 0

for i in range(0, N):
    whole.append([mat[i], exp[i]])

whole.sort(key=lambda x: -x[1])

while expensive <= cheapest:
    if whole[cheapest][1] <= experience:
        time += whole[cheapest][0]
        experience += whole[cheapest][0]
        cheapest -= 1
    else:
        minimum = min(whole[expensive][0], whole[cheapest][1] - experience)
        time += minimum * 2
        experience += minimum
        whole[expensive][0] -= minimum
        if whole[expensive][0] == 0:
            expensive += 1

print(time)
RészfeladatÖsszpontTesztVerdiktIdőMemória
base32/40
1Elfogadva0/043ms19632 KiB
2Elfogadva0/074ms24620 KiB
3Elfogadva2/239ms19628 KiB
4Elfogadva2/246ms21344 KiB
5Elfogadva2/259ms24296 KiB
6Elfogadva2/276ms26088 KiB
7Elfogadva2/252ms21968 KiB
8Elfogadva2/261ms22528 KiB
9Elfogadva3/346ms19500 KiB
10Elfogadva3/346ms19652 KiB
11Elfogadva3/339ms19492 KiB
12Elfogadva3/343ms21172 KiB
13Elfogadva4/454ms21544 KiB
14Elfogadva4/450ms21216 KiB
15Futási hiba0/265ms32000 KiB
16Futási hiba0/264ms32000 KiB
17Futási hiba0/274ms32000 KiB
18Futási hiba0/267ms32000 KiB