Rezultati

Up. imeNalogaJezikRezultatČas oddaje
jayzcrew-2018 Prehitevanje Python 3 100/100OK 04. okt '18 @ 18:52

Test Točke Porabljen spomin Porabljen čas Status
#1 16/16 8,664 MiB 0,000 s OK
#2 16/16 8,672 MiB 0,000 s OK
#3 17/17 8,664 MiB 0,000 s OK
#4 17/17 11,578 MiB 1,057 s OK
#5 17/17 64,848 MiB 2,799 s OK
#6 17/17 8,543 MiB 0,000 s OK

Ocenjevani program (prehitevanje.py):
import sys

data = sys.stdin



#data = open("test1.in")

N = int(data.readline().strip())
ime_prvi = data.readline().strip()
last = ime_prvi
dict = {}
dict[ime_prvi] = [None, None]

def swap(ime1, ime2):
    global ime_prvi
    if ime_prvi == ime1:
        ime_prvi = dict[ime1][1]

    if dict[ime1][0] is not None:
        dict[dict[ime1][0]][1] = dict[ime1][1]
    if dict[ime1][1] is not None:
        dict[dict[ime1][1]][0] = dict[ime1][0]

    if dict[ime2][0] is not None:
        dict[dict[ime2][0]][1] = ime1



    # zamenjava
    dict[ime1][0] = dict[ime2][0]
    dict[ime1][1] = ime2
    dict[ime2][0] = ime1


    if dict[ime1][0] is None:
        ime_prvi = ime1



for _ in range(N-1):
    naslednji = data.readline().strip()
    dict[naslednji] = [last, None]
    dict[last][1] = naslednji
    last = naslednji

k = int(data.readline().strip())

for _ in range(k):
    ime1, ime2 = data.readline().strip().split(" ")
    swap(ime1, ime2)


for _ in range(N):
    print(ime_prvi)

    ime_prvi = dict[ime_prvi][1]