Zgłaszanie | Wszystkie zgłoszenia | Najlepsze | Lista |
FR_16_16 - Ucieczka z biura |
Neo znajduje się w biurze. Przedstawmy je w postaci planszy:
- Plansza ma 4n + 1 wierszy i tyle samo kolumn.
- Wiersze ponumerowane są od 0, od góry do dołu.
- Kolumny ponumerowane są od 0, od lewej do prawej.
- Pola, których numer wiersza lub numer kolumny jest podzielny przez 4 to przejścia.
- Pozostałe pola to boksy biurowe.
Dla n = 2 plansza przedstawia się następująco:
......... .###.###. .###.###. .###.###. ......... .###.###. .###.###. .###.###. .........
Gdzie kropka oznacza przejście, zaś kratka oznacza boks biurowy.
W biurze jest agent, który szuka Neo. Początkowo agent znajduje się na polu 0 4n (wiersz kolumna). Agent przemieszcza się według następujących zasad:
- Z aktualnego pola może się przenieść na dowolne inne pole będące przejściem.
- Nigdy nie przeniesie się na pole 0 0.
- Nigdy nie przeniesie się na pole 4n 4n.
- Nigdy nie przeniesie się na pole, na którym aktualnie znajduje się Neo.
Nasz bohater początkowo znajduje się na polu 0 0 i musi się dostać na pole 4n 4n. Neo przemieszcza się według następujących zasad:
- Z aktualnego pola może przejść tylko na pole mające z nim wspólny bok, które jest przejściem.
- Nigdy nie przejdzie na pole, na którym aktualnie znajduje się agent.
Nasz bohater zadzwoni do Ciebie. Neo poda Ci wartość n. Następnie będzie Ci przekazywał komunikaty. Każdy komunikat może być jednego z dwóch typów:
- 1 w k - Neo przeszedł, zgodnie z zasadami, na pole w wierszu w i kolumnie k.
- 2 w k - Agent przeniósł się, zgodnie z zasadami, na pole w wierszu w i kolumnie k.
Dla każdego komunikatu typu 1 podaj kierunek, w którym Neo ma przejść, aby znaleźć się w minimalnej odległości od pola 4n 4n. Pamiętaj, że rozpatrujesz aktualną sytuację na planszy.
Ponieważ Neo jest bardzo zestresowany, niekoniecznie musi się przemieszczać zgodnie z Twoimi wskazówskami.
Wejście
W pierwszej linii znajduje się liczba całkowita n ∈ [1, 10].
W kolejnych liniach znajdują się komunikaty. Liczba komunikatów jest nieokreślona, ale nie będzie większa niż 1497247.
Każdy komunikat ma jedną z dwóch postaci:
- 1 w k
- 2 w k
Gdzie w oznacza numer wiersza, zaś k oznacza numer kolumny. Numer wiersza oraz numer kolumny zawierają się w przedziale [0, 4n].
Po dojściu do celu, czyli wczytaniu komunikatu 1 4n 4n, powinieneś zakończyć program.
Wyjście
Dla każdego komunikatu typu 1 podaj kierunek, w którym Neo ma przejść, aby znaleźć się w minimalnej odległości od pola 4n 4n. Pamiętaj, że rozpatrujesz aktualną sytuację na planszy. Możliwe kierunki to:
- NAPRZOD
- LEWO
- PRAWO
- ZAWROC
Przykład
Wejście:
2 1 0 1 2 0 4 1 0 2 1 0 3 1 0 2 1 0 1 1 0 0 1 1 0 1 2 0 1 3 0 1 4 0 1 4 1 1 4 2 1 4 3 2 4 5 1 4 4 1 5 4 1 6 4 1 7 4 2 8 3 1 8 4 1 8 5 1 8 6 1 8 7 1 8 8
Wyjście:
NAPRZOD ZAWROC ZAWROC NAPRZOD NAPRZOD LEWO NAPRZOD NAPRZOD NAPRZOD LEWO NAPRZOD NAPRZOD NAPRZOD PRAWO NAPRZOD NAPRZOD NAPRZOD LEWO NAPRZOD NAPRZOD NAPRZOD
Dodane przez: | Maciej Boniecki |
Data dodania: | 2022-12-16 |
Limit czasu wykonania programu: | 5s |
Limit długości kodu źródłowego | 50000B |
Limit pamięci: | 1536MB |
Cluster: | Cube (Intel G860) |
Języki programowania: | All except: ASM32-GCC COBOL D-CLANG D-DMD ELIXIR FANTOM GOSU GRV JS-MONKEY NIM OBJC OBJC-CLANG PICO RUST SCM qobi CHICKEN VB.NET |
ukryj komentarze
2022-12-18 15:16:45 Maciej Boniecki
Dzięki :) |
|
2022-12-18 09:03:24 narbej
Wygąda na bardzo ciekawe zadanie. Super, tylko czasu brak. |
|
2022-12-17 21:13:51 Maciej Boniecki
Zgodnie ze słownikiem języka polskiego naprzód oznacza: przed siebie, w przód. Jeżeli to nie jest dla Ciebie wystarczająco zrozumiałe to mogę Ci podpowiedzieć, że chodzi tu o poruszanie się w tym samym kierunku w jakim zostało wykonane poprzednie przejście przez Neo. |
|
2022-12-17 20:15:47
Co znaczy słowo naprzód? czym jest przód? |