Прямокутник Рубіка#6766

Прямокутник Рубіка

5 секунд
256 мегабайтів
Дуже легка

Нова головоломка, яка поєднує в собі Кубик Рубіка та П'ятнашки, швидко завойовує популярність на ігровому ринку. Вона являє собою дошку розміром H \times W, на якій розташовані плитки з числами від до H \cdot W.

Єдина дозволена операція — це перевертання одного рядка або одного стовпця. Перевертання змінює порядок елементів у рядку або стовпці. Нижче наведено приклад перевертання третього рядка:

Вам надано дошку, плитки якої пронумеровані в довільному порядку. Ваше завдання — визначити послідовність перевертань, які приведуть плитки у відсортований вигляд.

Вхідні дані

Перший рядок містить кількість тестів . Кожен тест починається з порожнього рядка. Наступний рядок містить два числа і (1 \le W, H \le 100) — ширина і висота головоломки. Наступні рядків містять цілих чисел, записаних на послідовних плитках.

Вихідні дані

Виведіть відповідь на кожен тест в окремому рядку. Перше слово повинно бути POSSIBLE або IMPOSSIBLE в залежності від того, чи можна вирішити головоломку. Якщо розв'язок існує, виведіть (у тому ж рядку) кількість перевертань (можливо рівне ) та їх описи, що складаються з однієї літери R або C (перевертання рядка або стовпця), і індекса відповідного рядка або стовпця.

Виведіть будь-яке правильне рішення, що складається з не більше 10 \cdot W \cdot H ходів. Кожен тест або розв'язується за вказаний час, або не має рішення.

Приклади

Приклад 1

Loading
Loading