시간 제한 | 메모리 제한 | 제출 | 정답 | 맞힌 사람 | 정답 비율 |
---|---|---|---|---|---|
5 초 | 1024 MB | 2691 | 683 | 453 | 22.582% |
요즘 택희는 RPG 게임을 하고 있다. 던전을 헤쳐나가며 몬스터를 물리치고, 아이템을 모으고, 레벨 업을 하여 보스 몬스터를 물리치는 전형적인 RPG 게임이다.
이 게임은 N×M 2차원 그리드 위에서 진행되며, 그리드의 각 칸에는 아래와 같은 것들이 있을 수 있다.
주인공은 처음에 빈 칸 하나에서 시작한다. 주인공 캐릭터에 대한 정보는 아래와 같다.
주인공의 한 턴은 다음과 같은 순서대로 이루어진다.
주인공은 상하좌우로 한 칸씩 이동할 수 있으며, 주인공의 이동은 L, R, U, D로 이루어진 문자열 하나로 미리 모두 주어진다. L은 왼쪽, R은 오른쪽, U는 위, D는 아래를 의미한다. 움직일 수 없는 명령(벽으로 들어가거나, 그리드 밖으로 나가는 등)이 주어질 수도 있는데, 이 경우 제자리에서 이동하지 않는다.
게임은 보스 몬스터를 처치하거나, 주인공이 (전투 또는 가시 함정에 의해) HP가 0 이하가 되어 죽거나, 입력된 문자열에 해당하는 모든 커맨드를 마쳤을 때 끝난다. 보스 몬스터를 처치해서 게임이 끝날 경우, 보스 몬스터의 경험치를 획득하고, 필요하다면 레벨 업이나 장신구 효과 등도 모두 진행한 뒤 게임이 끝나게 된다. 만약 입력이 끝나지 않았으나 게임이 끝났을 경우, 남은 입력은 모두 무시한다. 게임이 끝난 이후에는 아래와 같은 순서대로 게임의 결과를 출력해야 한다. <, > 안에 표시된 단어는 <, > 내부의 내용을 적절히 대체하고, <, >를 제거하여 출력한다.
출력 예제를 참고하면 더 쉽게 알 수 있다. 각 아이템 상자의 내용물이나, 몬스터의 정보 등은 입력으로 모두 주어지며, 입력 형식은 설명을 참조한다.
여기까지 읽었다면 무엇을 해야 할 지 파악했을 것이다. 최선을 다해보도록 하자!
첫 줄에 그리드의 크기 N과 M이 주어진다. (1 ≤ N, M ≤ 100, 2 ≤ N×M)
다음 줄부터 N개의 줄에 걸쳐 M개의 문자로 그리드의 상태가 주어진다. 주어지는 문자는 모두 본문에 설명된 것 중 하나이다.
보스 몬스터에 해당하는 ‘M’과, 주인공에 해당하는 ‘@’은 정확히 한 개씩 있다.
그 다음 줄에는 L, R, U, D로 이루어진 문자열 S가 주어진다. (1 ≤ |S| ≤ 5,000) 주인공은 문자열 S의 첫 글자부터 순서대로 실행한다.
이 그리드에 있는 몬스터의 수(보스 몬스터 포함)를 K라 하자. 이제 K줄에 걸쳐 각 몬스터의 정보가 아래와 같이 주어진다.
이후, 그리드에 있는 아이템 상자의 수를 L이라 할 때, L줄에 걸쳐 각 상자의 정보가 아래와 같이 주어진다.
N개의 줄에 M개의 문자로 게임이 끝난 시점의 그리드의 최종 상태를 출력한다.
N+1번째 줄에 진행된 턴 수를 Passed Turns : T 의 형태로 출력한다.
N+2번째 줄부터 N+6번째 줄까지, 주인공의 상태를 출력 예제의 형식대로 출력한다. 각 값의 의미는 본문을 참조한다.
N+7번째 줄에, 게임의 결과를 본문에 설명한 형식대로 출력한다.
아래 예제 중 첫 세 개는 가능한 세 가지 게임 결과에 대한 출력 형식을 모두 담고 있으므로 참고하면 좋을 것이다.
7 8 .&....&. ..B.&..& B...&... .B@.B#.. .&....M. .B...B.. ..B^^&.. RRRUULLULUDDDLDRDRDRRRURRULUULLU 3 5 One 4 2 10 3 2 5 Two 10 2 8 3 1 2 Three 20 2 14 7 5 2 Four 16 2 16 5 7 6 Five 16 5 16 12 5 7 Boss 2 9 20 2 1 7 EO 20 1 1 4 2 8 ET 10 5 4 10 4 5 W 4 2 3 O CO 3 1 A 10 4 2 A 2 6 2 O DX 7 3 O HU 6 6 W 3
......&. .......& B....... .....#.. ......@. ........ ...^^... Passed Turns : 27 LV : 3 HP : 29/30 ATT : 6+3 DEF : 6+2 EXP : 14/15 YOU WIN!
6 6 BBBB^& ....&. &...BB B.B#.& B&.@#B ...#MB UURRDDURDLRRLLLDUULUUUURRRLRRDLDRRDDDLRRD 5 2 One 2 2 19 4 3 1 Two 2 2 12 2 2 5 Three 4 5 16 9 4 6 Four 20 13 20 8 6 5 Boss 10 20 11 20 1 6 Etc 20 20 20 20 1 1 O EX 1 2 O CU 1 3 O CO 1 4 O CU 3 5 O DX 3 6 O RE 4 1 A 10 5 1 W 10 4 3 W 5 5 6 W 1 6 6 A 1
....^& ...... ...... ..B#.. ....#. ...#M. Passed Turns : 38 LV : 3 HP : 0/30 ATT : 6+1 DEF : 6+1 EXP : 9/15 YOU HAVE BEEN KILLED BY Boss..
6 6 @.BB.M ..##B. BB.... ##.### &&.&&& &#..#& RRRRRDDRRDDLLDURRRRRDULLLUURRRU 1 6 Boss 20 20 20 20 5 2 One 5 2 2 5 5 1 Two 5 4 6 6 6 1 Three 5 4 10 6 5 4 Four 8 4 8 7 5 5 Five 8 4 8 10 5 6 Six 3 3 10 20 6 6 Seven 8 8 1 4 1 3 O RE 1 4 O HR 3 1 W 2 3 2 A 2 2 5 A 10
.....M ..##B@ ...... ##.### ...... .#..#. Passed Turns : 31 LV : 5 HP : 40/40 ATT : 10+2 DEF : 10+2 EXP : 4/25 Press any key to continue.
5 5 B^^#M ^^^#. &^@## ^^^^# ^^^^^ UULLDDDDRRRRULUULUUULDDDDLUUURRRDDRR 1 5 Boss 10 5 2 3 3 1 Easy 1 1 1 10 1 1 O DX
.^^#M ^^^#. .^.## ^^^^# ^^^^^ Passed Turns : 34 LV : 2 HP : 0/25 ATT : 4+0 DEF : 4+0 EXP : 0/10 YOU HAVE BEEN KILLED BY SPIKE TRAP..
5 5 B^^#M ^^^#. &^@## ^^^^# ^^^^^ UULLDDDDRRRRULUULUUULDDDDLUUURRRDDRR 1 5 Boss 10 5 2 3 3 1 Easy 1 1 1 10 1 1 O RE
.^^#M ^^^#. &^.## ^^^^# ^^^^^ Passed Turns : 9 LV : 1 HP : 0/20 ATT : 2+0 DEF : 2+0 EXP : 0/5 YOU HAVE BEEN KILLED BY SPIKE TRAP..
8 8 ..B.&..& .B&B#B#B .#...B.. M#.&.&.. .@B.#&.. .&#.&B.. ###BBB.& &B.##... LRLDLUDLDLDRDUURULUDRLDRLDLURD 1 5 HNUHXA 3 3 6 4 1 8 LxfsUy 2 2 10 2 2 3 BgtXGo 5 3 12 4 4 1 miUjvv 3 2 6 3 4 4 bjeHPC 2 2 4 1 4 6 qOMYnk 5 2 4 4 5 6 jpYpUQ 5 2 7 4 6 2 GfGskF 6 3 7 4 6 5 dzxXYp 3 3 5 1 7 8 GUmyAf 6 2 13 1 8 1 wECzzs 3 2 3 3 1 3 O DX 2 2 O RE 2 4 O CO 2 6 W 2 2 8 W 7 3 6 O CU 5 3 A 6 6 6 O DX 7 4 O DX 7 5 A 5 7 6 O RE 8 2 O RE
..B.&..& .B&B#B#B .#...B.. M#.&.&.. ..B.#&.. .&#.&B.. ###BBB.& &B.##... Passed Turns : 12 LV : 1 HP : 0/20 ATT : 2+0 DEF : 2+0 EXP : 0/5 YOU HAVE BEEN KILLED BY GfGskF..
8 8 ##&&.&.& B.&&B#.# #..#.... #..&@&&# &..&.#&. &#&....& #&..&..& &.M.#.## URLDRRURRUDRRDLRLUUDRRDRRLRULU 1 3 nMgvJf 4 2 11 6 1 4 XxqSmr 2 2 9 9 1 6 sWXDGn 6 1 7 9 1 8 RDkfra 6 1 6 6 2 3 cnIShV 5 3 10 9 2 4 tlAMAV 5 1 7 8 4 4 ThyjkB 6 3 9 10 4 6 oewIOe 3 3 10 7 4 7 mnBiQu 5 2 10 8 5 1 geDyeA 3 3 11 8 5 4 eChkWg 3 1 2 7 5 7 JYsSkN 5 2 13 8 6 1 tpsySF 3 3 2 6 6 3 CUMSDn 4 1 10 7 6 8 IjiBXl 4 3 5 8 7 2 ogdOhi 6 2 1 9 7 5 DzAkbI 6 2 7 6 7 8 KZEaHY 5 1 9 6 8 1 DtVSBD 3 2 12 7 8 3 dkMqDO 4 2 7 6 2 1 O HU 2 5 O EX
##&&.&.& B.&&B#@# #..#.... #..&...# &..&.#&. &#&....& #&..&..& &.M.#.## Passed Turns : 30 LV : 2 HP : 21/25 ATT : 4+0 DEF : 4+0 EXP : 8/10 Press any key to continue.
4 5 &&&B# ...&. &#&B. @BBM& RDDDULUDLRRRRUULRDDL 1 1 CBdyeX 4 3 5 10 1 2 jGZOLx 3 1 6 7 1 3 FOeeDv 5 1 2 10 2 4 PbTbcv 3 2 3 8 3 1 MFoVDB 6 1 4 6 3 3 lxTGpq 6 3 5 7 4 4 GYddRJ 6 3 3 10 4 5 KJlYKE 3 3 3 8 1 4 A 4 3 4 W 2 4 2 W 5 4 3 O HR
&&&B# ...&. .#&B. ...@& Passed Turns : 12 LV : 3 HP : 30/30 ATT : 6+5 DEF : 6+0 EXP : 0/15 YOU WIN!
5 4 .@#. .B.B BB.& B&.. &M.& ULRRDRURDLRLDRLLRDURRRDUL 3 4 KcUWry 7 5 8 4 4 2 yoKqoR 4 5 8 7 5 1 bZkdGd 5 4 11 8 5 2 gKrJBh 8 2 9 6 5 4 xqFzGM 3 2 9 4 2 2 W 1 2 4 A 8 3 1 O HU 3 2 O RE 4 1 O HU
..#. .... BB.. B.@. &M.. Passed Turns : 25 LV : 2 HP : 23/25 ATT : 4+1 DEF : 4+8 EXP : 4/10 Press any key to continue.
5 6 BB&^M. &####. ^&.B.. ...#&# .@..&. RRRUULLLLUUURRRRRDDDLL 5 5 One 4 1 5 3 4 5 Two 4 1 6 3 3 2 Three 13 1 5 6 2 1 Four 11 2 7 4 1 3 Five 13 2 10 3 1 5 Boss 14 3 13 10 3 4 A 4 1 1 O RE 1 2 O CU
...^@. .####. ^..... ...#.# ...... Passed Turns : 16 LV : 3 HP : 3/30 ATT : 6+0 DEF : 6+4 EXP : 13/15 YOU WIN!
University > 연세대학교 > 2019 연세대학교 컴퓨터과학과 프로그래밍 경진대회 J번