Nella versione arcade del gioco, Pac-Man mangia punti di pace. Tuttavia, in questa sfida, ha fame di caratteri alfanumerici e punteggiatura in una stringa.
Il tuo compito è quello di creare una funzione che alimenta Pac-Man una stringa, valuta se può mangiarla o meno e restituisce la stringa con la posizione di Pac-Man in essa.
Pac-Man ( <
) mangia personaggi da sinistra a destra, lasciando un carattere di sottolineatura o spazio per ogni personaggio mentre procede, e il suo obiettivo è quello di ottenere dalla prima posizione-1 all'ultima posizione + 1:
1. <Pac
2. _<ac
3. __<c
4. ___<
Tuttavia, il nemico naturale di Pac-Man, il fantasma, lo fermerà se incontra una delle lettere nella parola "GHOST" (senza distinzione tra maiuscole e minuscole). La tua funzione dovrebbe restituire la stringa con la posizione di Pac-Man mentre incontra il ghost
personaggio:
1. <No!
2. _<o!
L'unica cosa che può sconfiggere un fantasma è un granello di potere. Se Pac-Man raggiunge una lettera con la parola "PELLET" (anche senza distinzione tra maiuscole e minuscole) prima di arrivare a un fantasma, mangerà il fantasma e continuerà a muoversi e quel pellet verrà consumato. I granuli di potere possono accumularsi (cioè, in ppgg
entrambi i fantasmi verrebbero mangiati). Il personaggio T esiste sia come un fantasma che come una pallina, quindi può essere ignorato (trattato come qualsiasi altra lettera, come a
).
1. <Pop
2. _<op
3. __<p
4. ___<
Per chiarire ulteriormente, nella stringa "Pac-Man perde qui", si verificano le seguenti operazioni:
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
Esempi
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: ___________<
Questo è code-golf - vince il punteggio più basso in byte.
<
simbolo ...