Ctrl K

Пятнашки на шесть клеток

Сложная
Маленькая головоломка-«пятнашки» — поле 2 × 3 с плитками 1–5 и одной пустой клеткой, обозначенной 0. За один ход можно сдвинуть в пустую клетку любую плитку, соседнюю с ней по стороне (то есть поменять местами 0 и соседнее число). Головоломка собрана, когда поле выглядит как [[1, 2, 3], [4, 5, 0]]. Дано текущее поле panel. Верните наименьшее число ходов, за которое его можно собрать, или -1, если собрать его нельзя.
Пример 1
panel=[[1, 2, 3], [0, 4, 5]] → 2

Сдвигаем 4 влево, потом 5 влево — 2 хода.

Пример 2
panel=[[2, 1, 3], [4, 5, 0]] → -1

Поменять местами только две плитки нельзя никакими сдвигами, поэтому ответ -1.

Пример 3
panel=[[1, 2, 3], [4, 5, 0]] → 0

Головоломка уже собрана.

Ограничения
  • panel — 2 строки по 3 числа
  • Числа в panel — это 0, 1, 2, 3, 4, 5, каждое ровно один раз
Встречал эту задачу на настоящем собесе?
Решили0
Пробовали0
Отправок0
Принято—
Темы
Похожие задачиСамый длинный подъём по карте СложнаяПрогулки только в гору СложнаяВсе способы расставить пробелы СложнаяРазрезать торт с ягодами СложнаяМышь, кот и сыр Сложная
загружаем Python…
Вход
panel=[[1, 2, 3], [0, 4, 5]]
Ожидается
2

«Запустить» — первые 3 теста у тебя в браузере, «Отправить» — все 81 тест на сервере, включая скрытые.