Rezultati

Up. imeNalogaJezikRezultatČas oddaje
kumkvat-2018 Prehitevanje Python 3 0/100Prekoračen čas (TLE) 04. okt '18 @ 16:57

Test Točke Porabljen spomin Porabljen čas Status
#1 16/16 8,676 MiB 0,000 s OK
#2 16/16 8,520 MiB 0,000 s OK
#3 17/17 8,672 MiB 0,000 s OK
#4 0/17 10,996 MiB 4,531 s Prekoračen čas
#5 0/17 65,684 MiB 7,009 s Prekoračen čas
#6 17/17 8,465 MiB 0,000 s OK

Ocenjevani program (prehitevanje.py):
n = int(input().strip())
mesta = {}
mesta_r = {}
vrstni_red = list(range(n))
for i in range(n):
    ime = input().strip()
    mesta[ime] = i
    mesta_r[i] = ime

p = int(input().strip())

for i in range(p):
    t1, t2 = input().strip().split(' ')
    m1 = vrstni_red[mesta[t1]]
    m2 = vrstni_red[mesta[t2]]
    if m1 > m2:
        vrstni_red[mesta[t1]] = m2
        vrstni_red = list(map(lambda x: x+1 if (x > m2 and x < m1) else x, vrstni_red))
        vrstni_red[mesta[t2]] += 1
    else:
        vrstni_red = list(map(lambda x: x - 1 if (x < m2 and x > m1) else x, vrstni_red))
        vrstni_red[mesta[t1]] = m2 - 1

vrstni_red = list(enumerate(vrstni_red))
vrstni_red.sort(key=lambda x: x[1])

for (i, _) in vrstni_red:
    print(mesta_r[i])