W razie problemów technicznych ze Szkopułem, prosimy o kontakt mailowy pod adresem [email protected].
Jeśli chciałbyś porozmawiać o zadaniach, rozwiązaniach lub problemach technicznych, zapraszamy na serwery Discord. Są one moderowane przez społeczność, ale członkowie zespołu technicznego też są tam aktywni.
Dany jest układ złożony z bramek. Bramki są ponumerowane od do . Każda bramka posiada pewną liczbę wejść i jedno wyjście. Wejścia i wyjścia mogą przyjmować stany , lub . Każde wejście jest połączone z dokładnie jednym wyjściem pewnej bramki. Stan wejścia jest równy stanowi wyjścia, z którym jest ono połączone. Każde wyjście może być połączone z dowolną liczbą wejść. Bramki o numerach i są specjalne - nie posiadają wejść i zawsze przyjmują określone stany na wyjściu: dla bramki o numerze , dla bramki o numerze .
Mówimy, że stan wyjścia bramki (krótko: stan bramki) jest poprawny, jeżeli:
Napisz program, który:
Pierwszy wiersz standardowego wejścia zawiera liczbę bramek , . Kolejne wierszy zawiera opisy połączeń bramek. Wiersz nr opisuje połączenia łączące wyjścia bramek z wejściami bramki nr . W wierszu tym znajduje się liczba wejść bramki nr , po której następuje numerów bramek, . Są to numery bramek, których wyjścia są połączone z kolejnymi wejściami bramki nr . Liczby w wierszach są pooddzielane pojedynczymi odstępami. Łączna liczba wszystkich wejść bramek nie przekracza .
Twój program powinien wypisać na standardowe wyjście wierszy. W zależności od stanu bramki numer , -ty wiersz powinien zawierać:
Dla danych wejściowych:
5 2 0 1 2 4 2 2 2 4
poprawną odpowiedzią jest:
0 1 1/2 ? ?
Autor zadania: Bartosz Walczak.