introduzione
"Yarr !! Avevamo un ragazzo che si definiva un" programmatore "per creare una mappa del nostro tesoro nascosto! Ma è scritto con strani numeri e lettere!" E5, N2, E3 "... che cosa fa anche Voglio dire? Follia! Non riesco nemmeno a scrivere una vera e propria mappa del tesoro, il cretino inutile. Risolvilo per noi! Ti regaleremo una parte del tesoro! "
Descrizione della sfida
Un gruppo di pirati ha difficoltà a leggere una mappa del tesoro. Puoi scrivere un programma per convertirlo in una forma più ... pirata?
Come input, riceverai la mappa del tesoro originale. È un elenco di stringhe separate da virgola, ciascuna stringa che consiste in una porzione di lettere (che indica ai pirati in quale direzione devono camminare) e una porzione numerica (che indica ai pirati quanti passi intraprendere in quella direzione). Ad esempio, la seguente mappa del tesoro:
E2,N4,E5,S2,W1,S3
significherebbe: "cammina due passi verso est, cammina quattro passi verso nord, cammina cinque passi verso est, cammina due passi verso sud, cammina un passo verso ovest, quindi cammina tre passi verso sud".
Come uscita, ti uscita la mappa in una forma grafica, utilizzando i caratteri >
, ^
, v
, e <
come puntatori. Ecco l'output per l'input sopra:
>>>>>v
^ v
^ v<
^ v
>>^ X
Si noti che abbiamo sostituito l'ultimo passaggio a sud con un X
invece. Questo perché l'ultimo passaggio è dove si trova il tesoro, e come tutti sappiamo, i pirati devono avere una X sulle loro mappe del tesoro, altrimenti non sapranno come leggerlo.
A proposito, la mappa non si attraverserà mai, quindi non devi preoccuparti di affrontare le sovrapposizioni. Inoltre, è consentito avere una nuova riga finale alla fine dell'output.
Ingressi e uscite di esempio
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
dovrebbe segnare il passo dopo l'ultima mossa, come tutte le altre mosse sono conteggiate. Immagina che l'ultimo passo sia N3: cammini tre passi verso nord e scavi, ma qui non c'è nulla, invece devi camminare 2 passi. Non mi importa se mantieni la regola esistente, perché aggiunge un piccolo caso angolare da gestire. Ma ricorda cosa è successo a quel ragazzo.