#Z1500. 八数码问题

八数码问题

在一个3*3棋盘上放置编号为1~8的个方块,每个占一格,另外还有一个空格。与空格相邻的数字方块可以移动到空格里。任务1:指定初始棋局和目标棋局(如图所示),计算出最少的移动步数;

八数码问题.png

任务2:输出数码的移动序列。

把空格看成0,一共有9个数字。

输入格式

第一行输入初始状态,空格分隔九个数字,空格用0表示。

第二行输入结束状态,空格隔开九个数字,空格用0表示。

输出格式

一行一个数字,表示初始状态到结束状态需要移动的步数

如果不能到达则输出“Impossible”。

输入样例:

1 2 3 0 8 4 7 6 5

1 0 3 8 2 4 7 6 5

输出样例:

2