Складання кубів#6076

Складання кубів

1 секунда
64 мегабайти
Середня

Розгляньте наступний шаблон додатних цілих чисел:

3 3 1

3 1

2

Зверніть увагу, що кожен рядок вирівняний по лівому краю і не довший за попередній рядок. Крім того, елементи в кожному рядку, якщо читати зліва направо, не зростають, і елементи в кожному стовпці, якщо читати зверху вниз, також не зростають. Ми будемо називати такий шаблон шаблоном укладання (ШУ), оскільки він може представляти спосіб укладання кубів у кутку наступним чином: якщо ви розглядаєте розміщення верхнього рядка і лівого стовпця проти стін, тоді ШУ дає вид зверху на те, скільки кубів укладено вертикально. Наведений вище ШУ представляє наступне укладання в кутку:

Ми будемо називати стіну проти верхнього рядка правою стіною, а стіну проти лівого стовпця лівою стіною. Ось ще один ШУ і укладання в кутку, яке він представляє:

Зверніть увагу, що якщо ви повернете укладання в кутку так, що ліва стіна стане підлогою, а підлога стане правою стіною, ви все ще матимете укладання в кутку. (Ми будемо називати це лівим поворотом.) Так само, ви все ще матимете укладання в кутку, якщо повернете так, що права стіна стане підлогою, а підлога стане лівою стіною. (Ми будемо називати це правим поворотом.) Отже, ШУ лівого і правого поворотів першого наведеного ШУ є

Ви повинні перевірити, що обидва лівий і правий повороти другого прикладу ШУ ідентичні оригінальному ШУ.

Вхідні дані

Ця задача складатиметься з кількох екземплярів задачі. Кожен екземпляр задачі складатиметься з додатного цілого числа n \leq 11, що вказує на кількість рядків у ШУ, який слідує. (n = 0 вказує на кінець вводу.) Рядки ШУ будуть слідувати, по одному на рядок, з елементами, розділеними одним пробілом, обмеженими кінцевим . (Кінцевий , звичайно, не є частиною вхідних даних і ви можете припустити, що кожен даний рядок має принаймні один куб.) Кожен елемент у шаблоні буде додатним цілим числом, меншим або рівним , і в будь-якому рядку буде не більше елементів.

Вихідні дані

Для кожного вхідного ШУ ви повинні створити два шаблони укладання, що відповідають лівому повороту і правому повороту (в такому порядку). Рядки ШУ повинні бути вирівняні по лівому краю з елементами, розділеними одним пробілом. Один порожній рядок повинен розділяти лівий і правий повороти даного ШУ, і два порожні рядки повинні розділяти вихідні дані для різних екземплярів задачі.

Приклади

Приклад 1

Loading
Loading