226902026-01-15 16:12:41vyrallBányász RPG (40 pont)python3Elfogadva 40/40280ms22936 KiB
n = int(input())
lvls = list(map(int, input().split()))
needed = list(map(int, input().split()))
lvls, needed = zip(*sorted(zip(lvls, needed)))
lvls, needed = list(lvls), list(needed)
lvl = 0
time = 0

l = 0
r = n - 1

while l <= r:
    if lvls[l] <= lvl:
        time += needed[l]
        lvl += needed[l]
        l += 1
    else:
        if needed[r] >= lvls[l] - lvl:
             num = lvls[l] - lvl
        else:
            num = needed[r]
        lvl += num
        time += 2*num
        needed[r] -= num
        if needed[r] == 0:
            r -= 1

print(time)
RészfeladatÖsszpontTesztVerdiktIdőMemória
base40/40
1Elfogadva0/016ms3124 KiB
2Elfogadva0/048ms6544 KiB
3Elfogadva2/216ms3120 KiB
4Elfogadva2/217ms3236 KiB
5Elfogadva2/245ms5940 KiB
6Elfogadva2/276ms9036 KiB
7Elfogadva2/221ms3760 KiB
8Elfogadva2/227ms4000 KiB
9Elfogadva3/316ms3116 KiB
10Elfogadva3/317ms3124 KiB
11Elfogadva3/316ms3084 KiB
12Elfogadva3/317ms3204 KiB
13Elfogadva4/417ms3208 KiB
14Elfogadva4/417ms3220 KiB
15Elfogadva2/2128ms13792 KiB
16Elfogadva2/2212ms18244 KiB
17Elfogadva2/2140ms14968 KiB
18Elfogadva2/2280ms22936 KiB