问题 6309 --嘉航与积木

6309: 嘉航与积木★★★★

时间限制: 1 Sec  内存限制: 128 MB
提交: 5  解决: 3
[提交][状态][命题人:]

题目描述

嘉航有 6 块积木,用数字 0-5 表示,他用这些积木填充了 2*3 的区域,并希望进行若干次交换得到 {[1,2,3],[4,5,0]} 的结果。一次交换定义为将 0 号积木与相邻(上下左右)积木交换,请你帮助嘉航计算出最少交换次数,如果无法得到预定结果输出 -1。

输入

输入共有两行,每行 3 个数字,代表积木的初始状态。

输出

输出为最少交换次数,如果不能得到目标结果则输出 -1。
样例输入
Copy
1 2 3
4 0 5
样例输出
Copy
1

提示

样例的状态如图所示,其中空白代表 0 号积木,将 0 号积木与 5 号积木交换即可得到结果,交换次数为 1。

样例输入2

1 2 3

5 4 0

样例输出2

-1


样例 2 如图所示,显然无论怎么交换都无法得到想要的结果,输出 -1。

来源

[提交][状态]