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

Мінімальна матриця

Мінімальна матриця

Дослідницький Інститут Даних Рядків відкрив новий відділ - Відділ Досліджень Заданих Матриць. Аналогічно до задачі канонізації рядків, відділ працює над задачею канонізації матриць. Розглянемо матрицю \textbf{m_\{i,j\}} розміром \textbf{2^n}× \textbf{2^n}, яка містить літери нижнього регістру. Циклічним зсувом матриці \textbf{m} називається така матриця \textbf{m'}, що \textbf{m'_\{i,j\} = m_\{(i+Δi) mod 2^n, (j+Δj) mod 2^n\}} для деяких Δ\textbf{i} та Δ\textbf{j }(рядки і стовбці матриці пріиндексовано від \textbf{0} до \textbf{2^n-1}). Матриця \textbf{p} є лексикографічно меншою матриці \textbf{q}, яка має такий же розмір, якщо існують такі \textbf{i} та \textbf{j}, що для \textbf{i'} < \textbf{i}, або для \textbf{i'} = \textbf{i} та \textbf{j'} <\textbf{ j} має місце рівність \textbf{p_\{i',j'\}} = \textbf{q_\{i',j'\}}, а \textbf{p_\{i,j\}} < \textbf{q_\{i,j\}}. Тобто порівняння матриць відбувається порядково. Задача канонізації матриці \textbf{m} полягає у заходженні такого циклічного зсуву, який буде не більшим довільного іншого циклічного зсуву \textbf{m}. Допоможіть дослідникам нового відділу знайти канонічне подання матриці. \InputFile Матриця \textbf{m}, яка має розмір розмір \textbf{2^n}× \textbf{2^n} (\textbf{0} ≤ \textbf{n} ≤ \textbf{9}). \OutputFile Вивести канонічне подання матриці \textbf{m}.
Ліміт часу 2 секунди
Ліміт використання пам'яті 256 MiB
Вхідні дані #1
baba
baab
abba
bbba
Вихідні дані #1
aabb
abbb
abab
bbaa
Автор Андрій Станкевич
Джерело Andrew Stankevich Contest 32, Petrozavodsk Summer Training Camp, Wednesday, September 3, 2008