In the event of technical difficulties with Szkopuł, please contact us via email at [email protected].
If you would like to talk about tasks, solutions or technical problems, please visit our Discord servers. They are moderated by the community, but members of the support team are also active there.
Dana jest szachownica o rozmiarach , gdzie jest nieparzystą liczbą całkowitą spełniającą nierówność , oraz zestaw kostek. Każda kostka ma kształt prostokąta pokrywającego dokładnie dwa pola. Pola szachownicy są ponumerowane kolejno wierszami - pola w pierwszym wierszu (od lewej do prawej) liczbami od do , pola w drugim wierszu od do i tak dalej aż do pola w prawym dolnym rogu, które ma numer .
Z szachownicy wycinamy trzy dowolne pola, a następnie chcemy ją pokryć kostkami, w taki sposób, aby każde nie wycięte pole pokrywała jedna kostka (pokrywająca też jedno z sąsiednich pól), a pola wycięte pozostały nie pokryte.
Czy zawsze jest to możliwe?
Napisz program, który:
Jeśli istnieje wiele sposobów pokrycia szachownicy kostkami, Twój program powinien wypisywać tylko jeden z nich.
W jedynym wierszu standardowego wejścia są zapisane cztery liczby pooddzielane pojedynczymi odstępami. Pierwsza liczba to rozmiar szachownicy , a trzy następne to numery wyciętych pól. Po ostatniej liczbie następuje koniec wiersza.
Dane w standardowym wejściu są zapisane poprawnie i Twój program nie musi tego sprawdzać.
Standardowe wyjście powinno zawierać albo jedno słowo NIE, albo w każdym z kolejnych wierszy dwie liczby oddzielone odstępem, to znaczy numery dwóch sąsiednich pól pokrywanych przez jedną kostkę.
Dla danych wejściowych:
7 17 25 40
poprawną odpowiedzią jest:
18 19 20 21 8 9 10 11 12 13 14 7 6 5 4 3 1 2 15 22 16 23 29 36 30 37 24 31 32 39 43 44 38 45 46 47 48 49 41 42 33 34 35 28 26 27
Dla danych wejściowych:
7 25 32 40
poprawną odpowiedzią jest:
NIE
Autor zadania: Wojciech Rytter.