`
Задача Puzzle2019. Игровое поле представляет собой прямоугольник из ячеек (5 строк, 4 колонки), на котором размещены плитки. Возможны размеры плиток - 1 * 1, 2 * 2, 1 * 2 и 2 * 1. Известно, что плитка 2 * 2 единственная. Ровно две ячейки свободны, плитки не могут накладываться друг на друга и выходить за пределы поля. За один ход можно переместить одну плитку на одну ячейку по горизонтали или вертикали. За какую наименьшее количество ходов можно получить позицию, в которой клетки (1,2) и (1,3) будут покрываться плиткой 2 * 2?
Технические условия. Программа читает из стандартного устройства ввода 5 строк по 4 целых разделенных пробелом числа в каждой строке - начальную позицию. 0 - пустая ячейка, 1 - плитка 1 * 1, 2 - принадлежит плитке 1 * 2, 3 - принадлежит плитке 2 * 1, 4 - принадлежит плитке 2 * 2. Программа выводит на устройство стандартного вывода минимальное количество ходов. Гарантировано, что плитка 2 * 2 не покрывает одновременно клетки (1,2) и (1,3). Если переместить плитку 2 * 2 Условия предоставления невозможно, программа выводит -1.
Пример
ввод
1 1 0 1
1 4 4 1
1 4 4 1
1 1 1 3
2 2 0 3
вывод
7
Комментарий. Пример соответствует позиции на рисунке.
© LIKT 1998-2024