eolymp
bolt
Спробуйте наш новий інтерфейс для відправки розв'язків
Задачі

Следствие

Следствие

<<Челикс>> учится в БГУИР, там ему дали задание сделать лабораторную работу по учебному предмету \textbf{<<физика>>}. Ему было лень делать эту работу самому, поэтому он решил позаимствовать эту работу у своих однопоточников. При проверке этой работы преподаватель заподозрил неладное и решил вызвать \textbf{следователя}. Следователь решил взяться за это дело. Ему было предоставлена лабораторная работа размерами $n \times m$. Она была разбита на подозрительные прямоугольники. Для того, что бы удостоверится в том, что эта работа была списана, следователь должен из первоначальной работы получить ту, которую ему предоставил преподаватель. Для этого он может использовать свои два коронных приёма: \begin{enumerate} \item \textbf{Разрезать} текущий прямоугольник по горизонтали или вертикали между двумя любыми целочисленными номерами строк или столбцов соответственно. \item \textbf{Перейти} в прямоугольник с другим номером. \end{enumerate} Но следователь понял что это задание для него очень сложное и он решил попросить вас о помощи. Для того, чтобы Вы смогли с этим справится он объяснил как происходит \textbf{нумерация прямоугольников}: \begin{itemize} \item Изначально у вас есть прямоугольник размера $n \times m$ с номером $1$. \item Если Вы разрезаете прямоугольник по горизонтали, у верхнего прямоугольника остается номер старого, а нижнему присваивается \textbf{минимальный незанятый номер} $~k~(k > 1)$. \item Если же Вы решили разрезать его по вертикали, левому новому прямоугольнику достается номер старого, а правому присваивается \textbf{минимальный незанятый номер} $~k~(k > 1)$. \end{itemize} Лабораторная работа должна быть разрезана в соответствии с \textbf{планом}, который следователь разработал специально для вас, а именно, он дал вам таблицу из $n$ строк и $m$ столбцов, одинаковая пара чисел в которой означает, что эти две клеточки должны быть расположены в одном прямоугольнике после всех разрезов, а также в этом прямоугольнике не должно быть клеток с различными числами. Записывать приемы, которые следует совершить, нужно в определенном формате: \begin{itemize} \item Для перемещения в другой прямоугольник запишите: \textbf{<<MOVE $i$>>}, где $i$ ~--- номер прямоугольника, в который нужно переместиться. \item Для разреза запишите: \textbf{<<SPLIT $t~i$>>}, где $t$ ~--- символ \textbf{<<H>>} (горизонтальный разрез) или \textbf{<<V>>} (вертикальный разрез), а $i$ ~--- номер столбца (или строки) после которого нужно совершить разрез (\textbf{обратите внимание}, что номер столбца (строки) вычисляется относительно текущего прямоугольника, а не относительно изначального). \end{itemize} Чтобы расследование было не очень долгим, следователь попросил вас справиться за $10^6$ приемов. \InputFile В первой строке вам даны числа $n$ и $m~(1 \le n, m \le 100)$ ~--- количество строк и столбцов соответственно. В следующих $n$ строках содержатся по $m$ чисел $a_{i,j}~(1 \le a_{i,j} \le n \cdot m)$ ~--- \textbf{план}, который разработал следователь. \OutputFile В первой строке выведите одно целое число $q~(0 \le q \le 10^6)$ ~--- количество \textbf{приемов}, совершенное вами. Во последующих $q$ строках выведите \textbf{описания приемов} в соответствии с описанным выше форматом. \textbf{Гарантируется, что ответ существует.}
Ліміт часу 1 секунда
Ліміт використання пам'яті 256 MiB
Вхідні дані #1
4 5
1 1 2 2 2
1 1 3 3 4
5 5 5 5 5
6 6 6 6 6
Вихідні дані #1
10
SPLIT H 2
SPLIT V 2
MOVE 3
SPLIT H 1
MOVE 4
SPLIT V 2
MOVE 5
MOVE 2
SPLIT H 1
MOVE 6