ENG  RUSTimus Online Judge
Online Judge
Задачи
Авторы
Соревнования
О системе
Часто задаваемые вопросы
Новости сайта
Форум
Ссылки
Архив задач
Отправить на проверку
Состояние проверки
Руководство
Регистрация
Исправить данные
Рейтинг авторов
Текущее соревнование
Расписание
Прошедшие соревнования
Правила

Уральская региональная командная олимпиада по программированию 2011

Описание     Задачи     Отправить на проверку     Состояние проверки     Результаты
Соревнование завершено

F. Кубик Рубинчика

Ограничение времени: 0.5 секунды
Ограничение памяти: 64 МБ
Problem illustration
Чтобы развить свои интеллектуальные способности, игроки команды Psych Up решили научиться собирать кубик Рубика. Помучившись неделю и отчаявшись, команда решила собрать кубик Рубика попроще — 2 × 2 × 2. Но и эта затея не увенчалась успехом. Тогда капитан команды Миша смастерил кубик ещё проще. Уж с ним-то не должно возникнуть проблем!
Новый кубик состоит из четырёх слоёв размера 4 × 4. Каждый слой выполнен из стекла и полностью прозрачен. Верхняя грань каждого слоя разбита на 16 одинаковых квадратиков. Четыре из них окрашены в различные цвета: красный, жёлтый, синий, зелёный. В центре каждого слоя сделано отверстие. Все слои через это отверстие надеты на твёрдый стержень так, что могут вращаться независимо друг от друга.
Слои выглядят так:
Problem illustration
Кубик считается собранным, если он находится в одном из следующих состояний (вид сверху):
Problem illustration
Собрать кубик было нелегко, однако команда Psych Up справилась с этой задачей. Но вам будет посложней! Из заданного состояния соберите кубик, сделав минимальное число поворотов. Одним поворотом считается поворот одного из слоёв на 90 градусов в любую сторону.

Исходные данные

На вход подаётся 4 строки по 4 целых числа — описание текущего состояния кубика (вид сверху). Все числа лежат в диапазоне от 1 до 4 и обозначают цвета соответствующих квадратиков. Различные числа обозначают различные цвета.

Результат

Выведите минимальное количество поворотов, необходимое для того, чтобы собрать кубик.

Пример

исходные данныерезультат
2 1 2 3
1 1 2 2
4 4 3 3
1 4 3 4
1
Автор задачи: Денис Мухаметьянов
Источник задачи: Уральская региональная командная олимпиада по программированию 2011
Чтобы отправить решение этой задачи на проверку перейдите в Архив задач: 1878. Кубик Рубинчика