在游戏的街机版本中,吃豆人吃豆点。但是,在这个挑战中,他渴望字符串中的字母数字字符和标点符号。
您的任务是创建一个函数,该函数为吃豆人提供一个字符串,评估他是否可以吃它,然后返回其中包含吃豆人位置的字符串。
吃豆人(<
)从左到右吃字符,每个字符在走时都留下下划线或空格,他的目标是从第一个位置1到最后一个位置+1:
1. <Pac
2. _<ac
3. __<c
4. ___<
但是,如果吃豆人的天敌幽灵将阻止他,如果他遇到单词“ GHOST”(不区分大小写)中的一个字母。您的函数在遇到ghost
字符时应返回吃豆人所在位置的字符串:
1. <No!
2. _<o!
唯一可以击败幽灵的东西就是力量药丸。如果吃豆人在遇到鬼魂之前到达单词“ PELLET”(也不区分大小写)中的字母,他将吃掉鬼魂并继续移动,该小球将被耗尽。强力药丸可以堆叠(即,ppgg
两个鬼魂都会被吃掉)。所述Ť字符存在既作为重影和小球,因此它可以忽略不计(如任何其他信处理,等a
)。
1. <Pop
2. _<op
3. __<p
4. ___<
为了进一步说明,在字符串“吃豆人在这里输”中,发生以下操作:
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
例子
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: ___________<
这是代码高尔夫球-最低得分(以字节为单位)获胜。
<
标志时,我都会看到一个伪装成灰色的