liczba_mieszkancow,liczba_wydarzen=input().split() liczba_mieszkancow=int(liczba_mieszkancow) liczba_wydarzen=int(liczba_wydarzen) tablica_stanow=[] for i in range(liczba_mieszkancow): tablica_stanow.append(0) wynik="" for i in range(liczba_wydarzen): instrukcja=str(input()) pozycje=instrukcja.split(" ") if instrukcja[0]=="-": tablica_stanow[int(instrukcja[2])-1]=0 elif instrukcja[0]=="?": wynik+=str(tablica_stanow[int(instrukcja[2])-1]) else: if tablica_stanow.count("?")==len(tablica_stanow): for j in range(len(tablica_stanow)): tablica_stanow[j]=1 else: if pozycje[1] == pozycje[2]: tablica_stanow[int(pozycje[1]) - 1] = 1 elif tablica_stanow[int(pozycje[1])-1]=="?" and tablica_stanow[int(pozycje[2]) - 1]=="?": tablica_stanow[int(pozycje[1]) - 1]=1 tablica_stanow[int(pozycje[2]) - 1]=1 elif tablica_stanow[int(pozycje[1])-1]==0 and tablica_stanow[int(pozycje[2]) - 1]==0: tablica_stanow[int(pozycje[1]) - 1]="?" tablica_stanow[int(pozycje[2]) - 1]="?" elif tablica_stanow[int(pozycje[1]) - 1]=="?" and tablica_stanow[int(pozycje[2]) - 1]==0: tablica_stanow[int(pozycje[2]) - 1]= "?" elif tablica_stanow[int(pozycje[1]) - 1]==0 and tablica_stanow[int(pozycje[2]) - 1]=="?": tablica_stanow[int(pozycje[1]) - 1]="?" elif tablica_stanow[int(pozycje[1]) - 1]==0 and tablica_stanow[int(pozycje[2]) - 1]==1: tablica_stanow[int(pozycje[1]) - 1]=1 elif tablica_stanow[int(pozycje[1]) - 1]==1 and tablica_stanow[int(pozycje[2]) - 1]==0: tablica_stanow[int(pozycje[2]) - 1]=1 elif tablica_stanow[int(pozycje[1]) - 1]==1 and tablica_stanow[int(pozycje[2]) - 1]=="?": tablica_stanow[int(pozycje[2]) - 1]=1 elif tablica_stanow[int(pozycje[1]) - 1]=="?" and tablica_stanow[int(pozycje[2]) - 1]==1: tablica_stanow[int(pozycje[1]) - 1]=1 print(wynik)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 | liczba_mieszkancow,liczba_wydarzen=input().split() liczba_mieszkancow=int(liczba_mieszkancow) liczba_wydarzen=int(liczba_wydarzen) tablica_stanow=[] for i in range(liczba_mieszkancow): tablica_stanow.append(0) wynik="" for i in range(liczba_wydarzen): instrukcja=str(input()) pozycje=instrukcja.split(" ") if instrukcja[0]=="-": tablica_stanow[int(instrukcja[2])-1]=0 elif instrukcja[0]=="?": wynik+=str(tablica_stanow[int(instrukcja[2])-1]) else: if tablica_stanow.count("?")==len(tablica_stanow): for j in range(len(tablica_stanow)): tablica_stanow[j]=1 else: if pozycje[1] == pozycje[2]: tablica_stanow[int(pozycje[1]) - 1] = 1 elif tablica_stanow[int(pozycje[1])-1]=="?" and tablica_stanow[int(pozycje[2]) - 1]=="?": tablica_stanow[int(pozycje[1]) - 1]=1 tablica_stanow[int(pozycje[2]) - 1]=1 elif tablica_stanow[int(pozycje[1])-1]==0 and tablica_stanow[int(pozycje[2]) - 1]==0: tablica_stanow[int(pozycje[1]) - 1]="?" tablica_stanow[int(pozycje[2]) - 1]="?" elif tablica_stanow[int(pozycje[1]) - 1]=="?" and tablica_stanow[int(pozycje[2]) - 1]==0: tablica_stanow[int(pozycje[2]) - 1]= "?" elif tablica_stanow[int(pozycje[1]) - 1]==0 and tablica_stanow[int(pozycje[2]) - 1]=="?": tablica_stanow[int(pozycje[1]) - 1]="?" elif tablica_stanow[int(pozycje[1]) - 1]==0 and tablica_stanow[int(pozycje[2]) - 1]==1: tablica_stanow[int(pozycje[1]) - 1]=1 elif tablica_stanow[int(pozycje[1]) - 1]==1 and tablica_stanow[int(pozycje[2]) - 1]==0: tablica_stanow[int(pozycje[2]) - 1]=1 elif tablica_stanow[int(pozycje[1]) - 1]==1 and tablica_stanow[int(pozycje[2]) - 1]=="?": tablica_stanow[int(pozycje[2]) - 1]=1 elif tablica_stanow[int(pozycje[1]) - 1]=="?" and tablica_stanow[int(pozycje[2]) - 1]==1: tablica_stanow[int(pozycje[1]) - 1]=1 print(wynik) |