W zręcznościowej wersji gry Pac-Man zjada pac-kropki. Jednak w tym wyzwaniu jest głodny znaków alfanumerycznych i interpunkcji w łańcuchu.
Twoim zadaniem jest stworzenie funkcji, która karmi Pac-Mana sznurkiem, ocenia, czy może go zjeść, czy nie, i zwraca łańcuch z lokalizacją Pac-Mana w nim.
Pac-Man ( <
) zjada postacie od lewej do prawej, pozostawiając podkreślenie lub miejsce dla każdej postaci, gdy idzie, a jego celem jest przejście od pierwszej pozycji-1 do ostatniej pozycji + 1:
1. <Pac
2. _<ac
3. __<c
4. ___<
Jednak naturalny wróg Pac-Mana, duch, zatrzyma go, jeśli napotka jedną z liter w słowie „GHOST” (bez rozróżniania wielkości liter). Twoja funkcja powinna zwrócić ciąg z lokalizacją Pac-Mana, gdy napotka on ghost
postać:
1. <No!
2. _<o!
Jedyną rzeczą, która może pokonać ducha, jest pocisk mocy. Jeśli Pac-Man dojdzie do litery w słowie „PELLET” (również bez rozróżniania wielkości liter) przed przyjściem do ducha, zje ducha i będzie się poruszał, a ten pellet zostanie zużyty. Pellety mocy mogą się kumulować (tzn. W ppgg
obu duchach zostaną zjedzone). Znak T istnieje zarówno jako duch, jak i granulka, więc można go zignorować (traktować jak każdą inną literę, jak a
).
1. <Pop
2. _<op
3. __<p
4. ___<
W celu dalszego wyjaśnienia w ciągu „Pac-Man przegrywa tutaj” następują następujące operacje:
P <P, +1 Pellet (1 pellet)
a <a
c <c
- <-
M <M
a <a
n <n
<[space]
l <l, +1 Pellet (2 pellets)
o <o, -1 Pellet (1 pellet)
s <s, -1 Pellet (0 pellets)
e <e, +1 Pellet (1 pellet)
s <s, -1 Pellet (0 pellets)
<[space]
h <h, ghost wins, returns
e
r
e
Przykłady
Input: Pacman wins!
Output: ____________<
Input: Pacman loses wah-wah :(
Output: _______________<h-wah :(
Input: PELLET PELLET GHOST
Output: ___________________<
Input: Hello World!
Output: <Hello World!
Input: <_!@12<_<_<
Output: ___________<
To jest golf golfowy - najniższy wynik w bajtach wygrywa.
<
symbol ...