아케이드 버전의 게임에서 Pac-Man은 pac-dots를 먹습니다. 그러나이 도전에서 그는 영숫자 문자와 문자열의 구두점에 배고프다.
당신의 임무는 Pac-Man에 문자열을 공급하고, 그것을 먹을 수 있는지 여부를 평가하고, Pac-Man의 위치와 함께 문자열을 반환하는 함수를 만드는 것입니다.
Pac-Man ( <
)은 왼쪽에서 오른쪽으로 문자를 먹으며 각 문자마다 밑줄이나 공백을 남겨두고 첫 번째 위치 -1에서 마지막 위치 +1에 도달하는 것이 목표입니다.
1. <Pac
2. _<ac
3. __<c
4. ___<
그러나 팩맨 (Pac-Man)의 천적 인 유령은 "고스트 (GHOST)"(대소 문자 구분 안함)라는 글자 중 하나를 만나면 그를 막을 것입니다. 함수는 캐릭터를 만나면 팩맨의 위치와 함께 문자열을 반환해야 ghost
합니다.
1. <No!
2. _<o!
유령을 물리 칠 수있는 유일한 것은 파워 펠릿입니다. Pac-Man이 유령에게 오기 전에 "PELLET"(대소 문자 구분 안 함)이라는 글자에 도달하면 유령을 먹고 계속 움직이며 그 펠릿이 다 사용됩니다. 파워 펠렛은 쌓을 수 있습니다 (즉, ppgg
두 유령 모두 먹게됩니다). T의 가 (같은 다른 문자로 취급 무시 될 수 있도록 문자, 유령과 펠렛 등 모두 존재합니다 a
).
1. <Pop
2. _<op
3. __<p
4. ___<
더 명확하게하기 위해 문자열 "Pac-Man이 여기에서졌습니다"에서 다음 작업이 수행됩니다.
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: ___________<
이것은 바이트 단위로 가장 낮은 점수입니다.
<
상징을 볼 때마다 검은 입술로 위장 된 회색 팩맨이 보입니다 ...