#P1001. 小A的华容道
小A的华容道
4## 题目描述
小 A 有一个 的华容道棋盘,上面有若干个不同大小的方块和一个 的空位。其上面都是 或 的长方形(横放或竖放),其中有一个特殊的 方块代表曹操。
由于小 A 不会玩,于是找你来解决这个问题。
小 A 会给定你棋盘的初始状态,你的任务是找到将曹操方块移动到棋盘底部中央位置(即第 行,第 列)的最少步数。每一步可以将一个方块移动到相邻的空位上。
输入描述
第一行包含两个整数 和 (),表示棋盘的行数和列数。
接下来 行,每行包含 个整数,表示棋盘的初始状态,其中:
0表示空位1表示 或 的普通方块2表示曹操方块(大小为 )
保证输入是一个合法的华容道状态,且恰好有一个空位和一个"曹操"方块。
输出描述
输出一个整数,表示将"曹操"方块移动到目标位置所需的最少步数。如果无法到达目标位置,输出 -1。
样例
3 4
1 1 2 0
1 1 1 1
1 1 1 1
5
4 4
1 1 1 1
1 2 0 1
1 1 1 1
1 1 1 1
8
3 3
1 2 1
1 0 1
1 1 1
-1