在滑块拼图中,我们通过反复滑动滑块到空格位置来完成一个目标局面。一位拼图设计者结合滑块拼图和迷宫的思
想设计了一种新的拼图。拼图被表示成一个矩形区域,区域被划分成一些 1×1 的小格。其中一些小格被提前放置
了障碍,无法被滑动。剩下的位置里有两个小格是空的,以及一个 2×2 的王滑块与许多 1×1 的卒滑块。如果一
个卒滑块与一个空格相邻,则卒滑块可以移动到空格中。如果一个王滑块的一边两个小格都是空格,则王滑块可以
向这条边的方向移动。但是注意我们无法移动障碍。对于给定的初始拼图,拼图游戏的任务是将王滑块移动到整个
区域的左上角。
例如下图给出了第四组样例的初始局面。
![]()
你的任务是计算从给定局面到完成任务所需的最少移动次数。一次移动是指某种滑块移动到相邻的位置上。