Mistrzostwa Polski Szkół Średnich w Programowaniu Zespołowym 2024
Problem description
W zasadzie każdy człowiek, wchodząc na ulicę Implementacyjnych Dyrdymałów, staje z osłupieniem, podziwiając najwspanialszą na świecie Fabrykę. To arcydzieło cywilizacji dziewiętnastego wieku jest największą fabryką, jaka tylko powstała – dziesiątki tysięcy metrów kwadratowych powierzchni, wiele kondygnacji. Z zewnątrz ściany Fabryki zdobione są czerwoną cegłą, która w połączeniu z ogromnymi połaciami przyciemnianego szkła sprawia niesamowite wrażenie. Gra świateł wewnątrz budynku szokuje swym pięknem każdego odwiedzającego. Fabryka …
Fabryka powinna być najnowocześniejszym dziełem ludzkim, jakie tylko istnieje. Dziś opatentowany został nowy system posadzkowy. Oczywiście Fabryka musi zostać w taki system wyposażona. Zgodnie z tym systemem podłoga Fabryki powinna składać się z dwóch warstw, z których każda składa się z klocków w kształcie litery “L”, złożonych z trzech mniejszych kwadratowych fragmentów o wymiarach 1 × 1. Ponadto, żaden klocek z warstwy drugiej nie może znajdować się nad tylko jednym klockiem z warstwy pierwszej.
Znamienici inżynierowie ułożyli już pierwszą warstwę posadzki na prostokątnym obszarze fabryki o wymiarach N × M. Twoim zadaniem będzie wyznaczenie układu klocków warstwy drugiej, w którym żaden z klocków nie będzie znajdywał się nad tylko jednym klockiem z warstwy pierwszej – każdy klocek z warstwy drugiej musi znajdować się na co najmniej dwoma różnymi klockami z warstwy pierwszej.
Wejście
W pierwszym wierszu wejścia znajdują się dwie liczby naturalne N i M, oddzielone pojedynczym odstępem i oznaczające wymiary posadzki Fabryki. W następnych N wierszach znajduje się po M liczb naturalnych Aij, pooddzielanych pojedynczymi odstępami i oznaczającymi numer klocka na pozycji i j.
Gwarantowane jest, że na wejściu podany będzie poprawny opis posadzki Fabryki.
Wyjście
Na wyjście należy wypisać N wierszy, w każdym z nich powinno znaleźć się po M liczb z przedziału od 1 do N ⋅ M, pooddzielanych pojedynczymi odstępami i reprezentującymi numery klocków, którymi zostało pokryte dane pole. Dane testowe zostały tak przygotowane, że istnieje poprawne rozwiązanie. Jeśli istnieje wiele poprawnych odpowiedzi, możesz wypisać dowolną z nich.
Ograniczenia
2 ≤ N, M ≤ 1 000, 1 ≤ Aij ≤ N ⋅ M.
Przykład
Input | Output | |
|
|
Input | Output | |
|
|
Input | Output | |
|
|