소개
"야! 우리는 자신을"프로그래머 "라고 불렀던 laddie를 숨겨둔 보물로지도를 만들었습니다! 그러나 'tis는 재치만으로도 이상한 숫자'n 글자를 썼어요!"E5, N2, E3 "… "광기 야! 보물지도를 제대로 쓸 수 없어, 쓸모없는 크레 틴. 우리를 고쳐라! 우리는 보물을 나눠 주겠다!"
도전 설명
해적 그룹이 보물지도를 읽는 데 어려움을 겪고 있습니다. 좀 더 ... 해적 형태로 변환하는 프로그램을 작성할 수 있습니까?
입력으로 원래 보물지도를받습니다. 쉼표로 구분 된 문자열의 목록입니다. 각 문자열은 문자 부분 (해적들에게 어느 방향으로 걸어 가야 하는지를 알려줍니다 )과 숫자 부분 (해적에게 그 방향으로 몇 걸음을 걸을 지를 알려줍니다)으로 구성됩니다. 예를 들어, 다음 보물지도 :
E2,N4,E5,S2,W1,S3
"동쪽으로 2 걸음 걷기, 북쪽으로 4 걸음 걷기, 동쪽으로 5 걸음 걷기, 남쪽으로 2 걸음 걷기, 서쪽으로 1 걸음 걷기, 남쪽으로 3 걸음 걷기"를 의미합니다.
출력으로, 그래픽 형태로 출력지도를, 문자를 사용하는거야 당신 >
, ^
, v
, 및 <
포인터 등. 위의 입력에 대한 출력은 다음과 같습니다.
>>>>>v
^ v
^ v<
^ v
>>^ X
우리는 마지막 단계를 남쪽으로 X
대신했습니다. 마지막 단계는 보물이있는 곳이며, 우리 모두 알고 있듯이 해적들은 보물지도에 X가 있어야합니다. 그렇지 않으면 보물을 읽는 방법을 모릅니다.
그건 그렇고,지도는 절대로 교차하지 않으므로 겹침 처리에 대해 걱정할 필요가 없습니다. 또한 출력 끝에 새 줄을 추가 할 수 있습니다.
샘플 입력 및 출력
S5,W2
v
v
v
v
v
X<
N1,E1,S1,E1,N1,E1,S2
>v>v
^>^X
N1
X
N6,E6,S6,W5,N5,E4,S4,W3,N3,E2,S2,W1,N2
>>>>>>v
^>>>>vv
^^>>vvv
^^^Xvvv
^^^^<vv
^^^<<<v
^^<<<<<
E21,S2
>>>>>>>>>>>>>>>>>>>>>v
X
N12,E11,S12,W2,N4
>>>>>>>>>>>v
^ v
^ v
^ v
^ v
^ v
^ v
^ v
^ v
^ X v
^ ^ v
^ ^ v
^ ^<<
X
의 단계를 표시해야 한다고 생각합니다 . 마지막 단계는 N3이라고 상상해보십시오. 북쪽으로 3 걸음 걸어서 파고 있지만 여기에는 아무 것도 없습니다. 대신 2 걸음 걸어야했습니다. 기존 규칙을 유지하더라도 처리해야 할 작은 코너 케이스가 추가되므로 걱정하지 않아도됩니다. 그러나 그 래디에게 일어난 일을 기억하십시오.