Прямокутник Рубіка
Нова головоломка, яка поєднує в собі Кубик Рубіка та П'ятнашки, швидко завойовує популярність на ігровому ринку. Вона являє собою дошку розміром H×W, на якій розташовані плитки з числами від 1 до H·W.
Єдина дозволена операція — це перевертання одного рядка або одного стовпця. Перевертання змінює порядок елементів у рядку або стовпці. Нижче наведено приклад перевертання третього рядка:
Вам надано дошку, плитки якої пронумеровані в довільному порядку. Ваше завдання — визначити послідовність перевертань, які приведуть плитки в відсортований вигляд.
Вхідні дані
Перша строка містить кількість тестів t. Кожен тест починається з пустої строки. Наступна строка містить два числа W і H (1 ≤ W, H ≤ 100) — ширина і висота головоломки. Наступні H рядків містять W цілих чисел, записаних на послідовних плитках.
Вихідні дані
Виведіть відповідь на кожен тест в окремому рядку. Перше слово повинно бути POSSIBLE або IMPOSSIBLE в залежності від того, чи можна вирішити головоломку. Якщо рішення існує, виведіть (в тому ж рядку) кількість перевертань (можливо рівне 0) та їх описи, що складаються з однієї літери R або C (перевертання рядка або стовпця), і індекса відповідного рядка або стовпця.
Виведіть будь-яке правильне рішення, що складається з не більше 10·W·H ходів. Кожен тест або розв'язується за вказаний час, або не має рішення.