Klasy

Limit pamięci: 32 MB

W Bajtocji dzieci grają w ciekawą odmianę gry w klasy. Na chodniku jest namalowany kwadrat o boku , podzielony na jednakowych pól. Zadaniem jednego z dzieci, zwanego dalej zawodnikiem, jest ponumerowanie wszystkich pól w ściśle określony sposób. Przed grą zawodnikowi wyznaczany jest kierunek świata: północ, południe, zachód lub wschód oraz dozwolony rodzaj skrętu: prawo lub lewo.

Wyznaczone dziecko wchodzi na wybrane przez siebie pole - jedno z czterech pól przy wierzchołkach kwadratu, zwraca się w wyznaczonym kierunku świata i rozpoczyna numerowanie od postawienia liczby na polu startowym. W każdym ruchu zawodnik:

  • idzie naprzód o jedno pole, o ile w wyniku tego ruchu pozostanie nadal wewnątrz kwadratu, a pole, na które przejdzie, jest wolne, tj. jeszcze nieponumerowane;
  • w przeciwnym przypadku wykonuje skręt w dozwolonym kierunku, ale tylko jeden, i idzie naprzód o jedno pole.
Każde kolejne odwiedzone pole zawodnik numeruje kolejną liczbą naturalną. Dodatkowo zakładamy, że w pierwszym ruchu zawodnik nie może wykonać skrętu, a jedynie pójść naprzód w wyznaczonym kierunku. Pole startowe musi więc zostać wybrane z rozwagą. Jeżeli na przykład kwadrat ma bok długości , zadany został kierunek północ i skręt w prawo, to doświadczony zawodnik wybrałby jako pole startowe róg południowo-zachodni, a cały ponumerowany kwadrat wyglądałby tak:

Twoim zadaniem jest napisanie programu, który wypisze zawartość pewnego zadanego wycinka kwadratu wypełnionego przez dzieci.

Wejście

W pierwszym wierszu standardowego wejścia znajdują się pooddzielane pojedynczymi odstępami: liczba całkowita (), oznaczająca długość boku kwadratu, oraz dwa wyrazy oznaczające kierunek świata (jedno ze słów: POLNOC, POLUDNIE, ZACHOD lub WSCHOD) i dozwolony skręt (jedno ze słów: PRAWO lub LEWO).

W drugim wierszu wejścia znajdują się cztery liczby całkowite , , , (, , ) oznaczające odpowiednio pierwszą i ostatnią kolumnę oraz pierwszy i ostatni wiersz wycinka, który należy wypisać. Kolumny są ponumerowane od do z zachodu na wschód, zaś wiersze - od do z południa na północ.

W 50% przypadków testowych zachodzi , natomiast w 75% przypadków testowych zachodzi .

Wyjście

Twój program powinien wypisać na standardowe wyjście dokładnie wierszy, a w każdym z nich po liczb pooddzielanych pojedynczymi odstępami. Mają one przedstawiać kolejne wiersze wycinka ponumerowanego kwadratu, podane w kolejności od najbardziej wysuniętego na północ do położonego najbardziej na południu.

Przykład

Dla danych wejściowych:

5 POLNOC PRAWO
2 4 2 3

poprawną odpowiedzią jest:

18 25 22
17 24 23

Autorzy zadania: Marian M. Kędzierski, Błażej Osiński.