Недавно Рудольфу подарили хитрую головоломку — кубик Рубика $$$2 \times 2 \times 2$$$.
Это устройство представляет собой куб $$$2 \times 2 \times 2$$$ с $$$24$$$-мя видимыми цветными квадратами. Грани большого куба способны вращаться вокруг трех внутренних осей куба. Каждая из шести граней состоит из четырех квадратов и окрашена в один из шести цветов: белый, оранжевый, желтый, красный, синий и зеленый.
Вращая грани куба, можно переупорядочивать цветные квадраты множеством различных способов. Задача состоит в том, чтобы путем вращения граней получить такой порядок, что все квадраты на одной грани будут иметь одинаковый цвет.
Рудольф сразу же бросился изучать схемы сборки кубика. Для удобства он нарисовал его развертку и пронумеровал квадраты от $$$1$$$ до $$$24$$$, как представлено на рисунке $$$1$$$. Также он обозначил грани буквами F (фронтальная), U (верхняя), D (нижняя), L (левая), R (правая), B (задняя), как представлено на рисунке $$$2$$$. С учетом этих обозначений он стал записывать вращения граней куба двумя символами $$$SC$$$, где $$$S$$$ — одна из букв, обозначающих грань, а $$$C$$$ — число от $$$1$$$ до $$$3$$$, обозначающее количество поворотов грани по часовой стрелке. Например $$$L2$$$ будет означать поворот левой грани $$$2$$$ раза по часовой стрелке. Направление по часовой стрелке для каждой из граней представлено на рисунке $$$3$$$.
![]() | ![]() |
| Рисунок 1. Нумерация клеток кубика | Рисунок 2. Обозначения граней |
Рисунок 3. Направления вращения граней Изучая различные схемы сборки, Рудольф наткнулся на такие понятия, как алгоритм Бога и число Бога. Он узнал, что алгоритмом Бога называют любой алгоритм, собирающий головоломку за оптимальное число ходов. А число Бога — это наибольшее количество ходов в алгоритме Бога из всех возможных начальных состояний кубика. Он узнал, что для кубика Рубика $$$2 \times 2 \times 2$$$ это число равно $$$11$$$, с учетом, что одним ходом считается поворот одной грани $$$1$$$, $$$2$$$ или $$$3$$$ раза по часовой стрелке.
Рудольф сразу же захотел составить такой алгоритм, но так как он не Бог, он попросил вас помочь ему. Ваша задача по исходной конфигурации кубика Рубика вывести любую кратчайшую последовательность ходов, приводящую кубик в собранное состояние.
Первая строка содержит $$$24$$$ числа $$$C_i (1 \le C_i \le 6)$$$, которые обозначают цвет $$$i$$$-го квадрата в исходной конфигурации кубика Рубика.
Цвета нумеруются следующим образом:
Гарантируется, что состояние корректное и было получено путем вращений граней кубика из собранного состояния. При этом в собранном состоянии относительное расположение цветов граней совпадает с расположением цветов на рисунках $$$1$$$ и $$$2$$$, но куб может быть повернут, и фронтальной грани не обязательно соответствует белый цвет.
В первой строке выведите целое число $$$M$$$ — количество ходов.
Во второй строке выведите $$$M$$$ строк вида $$$SC$$$, где $$$S$$$ — одна из букв {F, U, D, L, R, B}, а $$$C$$$ — число от $$$1$$$ до $$$3$$$, обозначающих вращения граней кубика. Если решений несколько, выведите любое.
6 6 6 6 3 3 4 4 5 5 5 5 2 2 1 1 2 2 3 3 4 4 1 1
1 U1
5 5 5 5 3 3 3 3 6 6 6 6 1 1 1 1 4 4 4 4 2 2 2 2
0
6 4 1 1 4 5 3 3 5 5 2 3 1 4 2 1 3 6 6 2 2 5 4 6
6 U2 L3 F1 U1 L1 U3
| Name |
|---|


