| 시간 제한 | 메모리 제한 | 제출 | 정답 | 맞힌 사람 | 정답 비율 |
|---|---|---|---|---|---|
| 1 초 | 512 MB | 21 | 9 | 8 | 66.667% |
W Bajtocji dzieci grają w ciekawą odmianę gry w klasy. Na chodniku jest namalowany kwadrat o boku $n,ドル podzielony na $n^2$ 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 1ドル$ na polu startowym. W każdym ruchu zawodnik:
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 5ドル,ドル 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.
W pierwszym wierszu standardowego wejścia znajdują się pooddzielane pojedynczymi odstępami: liczba całkowita $n$ (2ドル ≤ n ≤ 5,000円$), 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 $x_1,ドル $x_2,ドル $y_1,ドル $y_2$ (1ドル ≤ x_1 ≤ x_2 ≤ n,ドル 1ドル ≤ y_1 ≤ y_2 ≤ n,ドル $(x_2-x_1) \cdot (y_2 - y_1) ≤ 1,000円,000円$) oznaczające odpowiednio pierwszą i ostatnią kolumnę oraz pierwszy i ostatni wiersz wycinka, który należy wypisać. Kolumny są ponumerowane od 1ドル$ do $n$ z zachodu na wschód, zaś wiersze - od 1ドル$ do $n$ z południa na północ.
Twój program powinien wypisać na standardowe wyjście dokładnie $y_2 - y_1 + 1$ wierszy, a w każdym z nich po $x_2 - x_1 + 1$ 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.
5 POLNOC PRAWO 2 4 2 3
18 25 22 17 24 23