Змагання
Враховуючи або рядок (може мати нові рядки), або двовимірний масив, і додатне ціле число n
, вивести позицію платформ, що n
обертається після початкового положення.
U, D, R, L
є платформами.
^, v, >, <
є стрілками, які змінюють напрямки платформ.
U, D, R, L
рухатися відповідно вгору, вниз, вправо і вліво. Коли стрілка перед платформою, вона змінює напрямок.
Впливає на платформу:
R<
D
^
v
U
>L
>L
<
(стрілка вгорі вплине на верхню L
, але нижня стрілка не вплине на верхню L
)
Не вплине:
<
R
>
L
v
U
D
^
<R
( R
йде правильно, тому <
не вплине на R
)
Наприклад, якщо це був рядок:
>R <
Платформа R
рухатиметься праворуч, поки майже не торкнеться стрілки:
> R<
Після цього він змінить напрямок і почне йти вліво:
> R <
(незважаючи на те, що зараз це ліворуч, лист не зміниться.)
Є деякі випадки, коли платформа не рухатиметься, наприклад
>R<
або
v
U
^
Останній приклад:
v >
D Rv
^U
^ <
Після одного повороту
v >
U v
D ^ R
^ <
Після одного повороту
v >
D Uv
^R
^ <
І ще одна черга:
v >
R v
D ^ U
^ <
Ви можете припустити, що платформи після n
поворотів не перекриватимуться, що платформи не вийдуть за межі, і що платформа не торкнеться стрілки, яка вказує в тому ж напрямку, що і платформа.
Випробування
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 <"
Правила
- Це є код-гольф, тому найкоротша відповідь у байтах виграє!
- Стандартні лазівки заборонені.
n
поворотів.