Wiele starych gier Game Boy często wymagało od użytkownika wprowadzania ciągów. Nie było jednak klawiatury. Zostało to rozwiązane poprzez przedstawienie użytkownikowi „ekranu klawiatury” w następujący sposób:
W „wskaźnik znak” rozpocznie się na literę A. Użytkownik może nawigować do każdego żądanego znaku z D-Pad „s cztery przyciski ( UP
, DOWN
, LEFT
i RIGHT
), a następnie naciśnij BUTTON A
, aby dołączyć go do końcowego łańcucha.
Proszę zanotować:
- Siatka owija się , więc naciśnięcie
UP
na literę A zabierze Cię do T. - „Wskaźnik znaków” pozostaje wstawiany po dodaniu litery
Wyzwanie
Powyższa klawiatura ma opcje zmiany wielkości liter i ma nieregularny kształt. Dla uproszczenia w tym wyzwaniu użyjemy następującej klawiatury (prawy dolny róg to ASCII char 32, spacja):
A B C D E F G
H I J K L M N
O P Q R S T U
V W X Y Z .
Pisanie na klawiaturze takiej jak ta jest bardzo wolne - więc aby to ułatwić, Twoim zadaniem jest napisanie programu, który poinformuje użytkownika o najszybszym możliwym sposobie wpisania danego ciągu. Jeśli istnieje wiele najszybszych sposobów, wystarczy tylko jeden z nich.
Klucz wyjściowy powinien być:
>
dlaRIGHT
<
dlaLEFT
^
dlaUP
v
dlaDOWN
.
dlaBUTTON A
(dodaj bieżącą literę do ciągu)
Na przykład po podaniu ciągu DENNIS
rozwiązanie wyglądałoby tak:
>>>.>.>>v..>>.>>>v.
Zasady / Szczegóły
- Pamiętaj, że siatka się zawija!
- Możesz przesłać pełny program lub funkcję, o ile zajmie to ciąg początkowy i wygeneruje ciąg rozwiązania. Białe znaki / końcowe znaki nowej linii są nieistotne, o ile wynik jest poprawny.
- Możesz założyć, że dane wejściowe będą składały się wyłącznie ze znaków, które można wpisać na określonej klawiaturze, ale mogą być puste.
- To jest golf golfowy , więc wygrywa najkrótszy kod. Obowiązują standardowe luki w kodzie golfowym.
Przypadki testowe
Zwykle istnieje wiele rozwiązań o tej samej długości. Do każdego przypadku testowego podałem optymalną długość i przykład. Nie musisz drukować długości w odpowiedzi, tylko rozwiązanie.
FLP.TKC -> 25 steps: <<.<v.<<<v.<<<v.^.<<^.<^.
MOYLEX -> 23 steps: <<v.>>v.>>>v.>^^.^.<<^.
FEERSUM -> 18 steps: <<.<..<vv.>.>>.<^.
MEGO -> 14 steps: <<v.<^.>>.>vv.
A CAT -> 17 steps: .<^.>>>v.<<.<<vv.
BOB -> 10 steps: >.<vv.>^^.
(space) -> 3 steps: <^.
(empty) -> 0 steps: (empty)
Możesz wyświetlić mój generator testów na Rep.it - powiadom mnie, jeśli są jakieś błędy.
Dziękujemy wszystkim za zgłoszenia! Użytkownik ngn jest obecnie zwycięzcą z 61 bajtami, ale jeśli ktoś może znaleźć krótsze rozwiązanie, można przesunąć mały zielony znaczek;)