首页 > 试题广场 >

八数码

[编程题]八数码
  • 热度指数:198 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 128M,其他语言256M
  • 算法知识视频讲解

八数码问题,就是在一个含有1-8和x的3*3方格中,每次可以将x与其相邻位置的数字交换。使得最后变成

1 2 3
4 5 6
7 8 x

你要做的就是实现八数码的解决方案,并要求交换次数最少。


输入描述:
输入一个3*3的矩阵,包含1-8和x。


输出描述:
输出需要移动的步数
如果不可能实现,输出-1。
示例1

输入

2  3  4  
1  5  x  
7  6  8

输出

19

问题信息

上传者:小小
难度:
1条回答 1746浏览

热门推荐

通过挑战的用户

八数码