Кубик Рубіка#1201

Кубик Рубіка

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

Після ажіотажу, викликаного проведенням цього року Відкритого чемпіонату Норвегії з кубика Рубіка в НТНУ, кожен студент НТНУ придбав собі такий кубик. Проте професори були засмучені, бо студенти воліли грати з кубиком замість того, щоб слухати лекції.

Раптом одному професору прийшла в голову ідея: якщо дати студентам програму, яка розв'яже їхній кубик, вони можуть втратити до нього інтерес, і таким чином навчання можна буде відновити. Звичайно ж, сам професор не хоче займатися програмуванням, і ця задача випала саме тобі. Професор забирає в тебе кубик, замикає тебе у віддаленій лабораторії й каже, що ти не вийдеш, доки не напишеш програму для розв'язання кубика Рубіка.

На щастя, професор не уточнив розмір кубика, тож ти вирішуєш трохи спростити задачу і розв'язувати кубик Рубіка розміром 2 \times 2 \times 2.

Вхідні дані

У першому рядку знаходиться кількість тестів (0 < T \leq 100). Кожен тест складається з шести рядків, що описують початкову конфігурацію кубика, відформатованих точно як у прикладі вхідних даних. Для позначення кольорів використовуються символи G, R, O, B, Y, і W. Кожен тестовий випадок відділено одним порожнім рядком.

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

Вихідні дані

Для кожного тестового випадку виведіть у окремому рядку мінімальну кількість рухів, необхідну для збирання кубика. За рух вважається поворот однієї грані кубика на градусів за або проти годинникової стрілки. Поворот на градусів вважається двома рухами.

Приклади

Приклад 1

Loading
Loading