`
Задача 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