#127. 八数码

八数码

题目描述

在3×3的棋盘上,摆有八个棋子,每个棋子上标有1至8的某一数字。棋盘中留有一个空格,空格用0来表示。空格周围的棋子可以移到空格中。要求解的问题是:给出一种初始布局(初始状态)和目标布局。找到一种最少步骤的移动方法,实现从初始布局到目标布局的转变。为了简化问题,这里只要求输出到达目标状态所需最少步数即可

输入格式

共两行,第一行是初始状态,第二行是目标状态。输入中的0表示空位置

例如输入231045786就是这样的棋盘

2 3 1
  4 5
7 8 6

输出格式

一行一个整数,表示从初始状态到达目标状态所需最少步数。若无法到达目标状态,则输出-1

样例

样例输入

283104765
123804765

样例输出

4