介绍
“是的!我们有个小伙子自称是“程序员”,在地图上隐藏了我们的藏宝!但是“写得很机智”这个奇怪的数字“ n个字母!”“ E5,N2,E3”……甚至还能做什么? “疯狂!!甚至没能画出合适的藏宝图,没用的克汀丁。给我们修理吧!我们会赠予您一部分宝藏!”
挑战说明
一群海盗在阅读藏宝图时遇到了麻烦。您可以编写一个程序将其转换为更多盗版形式吗?
作为输入,您将收到原始的藏宝图。这是一个用逗号分隔的字符串的列表,每个字符串包括一个字母部分(告诉海盗他们需要走的方向)和一个数字部分(告诉海盗在这个方向上要走多少步)。例如,以下藏宝图:
E2,N4,E5,S2,W1,S3
意思是“向东走两步,向北走四步,向东走五步,向南走两步,向西走一步,然后向南走三步。”
作为输出,就会输出地图图形形式,用文字>
,^
,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:您向北走了三步并进行挖掘,但是这里什么也没有,您不得不走了两步。我不介意您是否保留现有规则,因为它增加了一些处理不便的情况。但是请记住那个小伙子发生了什么。