La sfida
Data una stringa (può avere newline) o un array bidimensionale e un numero intero positivo n
, la posizione delle piattaforme n
si trasforma dopo la posizione iniziale.
U, D, R, L
sono piattaforme.
^, v, >, <
sono frecce che cambiano le direzioni delle piattaforme.
U, D, R, L
spostare su, giù, destra e sinistra, rispettivamente. Quando una freccia si trova davanti a una piattaforma, cambia la direzione.
Colpisce la piattaforma:
R<
D
^
v
U
>L
>L
<
(la freccia in alto influirà in alto L
, ma la freccia in basso non influirà in alto L
)
Non influenzerà:
<
R
>
L
v
U
D
^
<R
( R
sta andando bene, quindi <
non influenzerà R
)
Ad esempio, se questa era la stringa:
>R <
La piattaforma R
si sposterà a destra fino a toccare quasi la freccia:
> R<
Dopo, cambierebbe la direzione e inizierebbe a sinistra:
> R <
(anche se ora sta andando a sinistra, la lettera non cambierà.)
Ci sono alcuni casi in cui la piattaforma non si sposta, come ad esempio
>R<
o
v
U
^
Ultimo esempio:
v >
D Rv
^U
^ <
Dopo un giro,
v >
U v
D ^ R
^ <
Dopo un giro,
v >
D Uv
^R
^ <
E un altro giro:
v >
R v
D ^ U
^ <
Puoi presumere che le piattaforme, dopo le n
virate, non si sovrappongano, che le piattaforme non vadano oltre i limiti e che una piattaforma non toccherà una freccia che punta nella stessa direzione della piattaforma.
Casi test
Input:
">R <", 4
Output:
"> R <"
Input:
">R <", 6
Output:
">R <"
Input:
">R<", 29
Output:
">R<"
Input:
"v
U
^", 5
Output:
"v
U
^"
Input:
"v
D
^", 1
Output:
"v
D
^"
Input:
"v
D
^", 4
Output:
"v
D
^"
Input:
"v >
D Rv
^U
^ < ", 2
Output:
"v >
D Uv
^R
^ <
Input:
">RL<", 3
Output:
">LR<"
Input:
">L R<", 4
Output:
"> RL <"
Input:
"> RR<
>L R <", 6
Ouput:
">RR <
> RL <"
Input:
"R <", 4
Output:
" R <"
Input:
"R <", 6
Ouput:
"R <"
Regole
- Questo è code-golf , quindi vince la risposta più breve in byte!
- Le scappatoie standard non sono ammesse.
n
turni.