X Olimpiada Informatyczna 2002/2003
|
Zadanie: mas
|
Autor: Zbigniew Czech
|
Zawody II stopnia, dzień próbny |
Plik źródłowy: | mas.xxx (xxx=pas,c,cpp) |
Alternatywne formaty: PostScript | PDF
Będziemy rozważali ciągi, które spełniają następujące warunki:
Pojedynczy ciąg będziemy nazywali układem.
Mając dane dwa układy, ich zgodność oceniamy podając dwie liczby. Pierwsza z nich (kolumna A w przykładzie) to suma cyfr, które występują w obu układach i znajdują się na tej samej pozycji w obu ciągach, natomiast druga (kolumna B), to suma cyfr, które występują w obu układach, ale znajdują się na różnych pozycjach.
Mamy dane u układów i podane oceny ich zgodności z pewnym nieznanym układem. Należy podać nieznany układ. Poniżej przedstawiono przykładowe dane i wynik dla u = 3.
Napisz program, który:
Twój program powinien czytać opis ze standardowego wejścia. W pierwszym wierszu zapisana jest jedna liczba całkowita u, 1 <= u <= 9. W kolejnych u wierszach opisane są podane układy cyfr oraz ocena ich zgodności z pewnym nieznanym układem, po jednym w wierszu. W każdym z tych wierszy zapisanych jest po u+2 nieujemnych liczb całkowitych pooddzielanych pojedynczymi odstępami. Pierwsza i druga liczba są oceną zgodności danego układu z nieznanym układem. Ostatnie u liczb, to różne cyfry z zakresu 1-9 tworzące dany układ.
Twój program powinien wypisać na standardowe wyjście u różnych cyfr z zakresu 1-9 tworzących poszukiwany układ, oddzielonych pojedynczymi odstępami.
Możesz założyć, że dla danych testowych istnieje co najmniej jedno rozwiązanie. Jeżeli dla danych wejściowych istnieje wiele pasujących układów, Twój program powinien wypisać tylko jeden z nich.
Dla danych wejściowych:
3 4 0 4 9 7 0 10 6 7 4 0 5 9 4 1
poprawnym wynikiem jest:
4 1 6