pascal 语言 宽度搜索 平面魔方问题平面魔方的初态和末态如下所示,每行可向左向右滚动,每列可向上向下滚动.要求编一程序,让电脑找出用最少的步数从初态到末态的变换方法,并在屏幕上表

来源:学生作业帮助网 编辑:作业帮 时间:2024/05/05 01:02:00
pascal 语言 宽度搜索 平面魔方问题平面魔方的初态和末态如下所示,每行可向左向右滚动,每列可向上向下滚动.要求编一程序,让电脑找出用最少的步数从初态到末态的变换方法,并在屏幕上表

pascal 语言 宽度搜索 平面魔方问题平面魔方的初态和末态如下所示,每行可向左向右滚动,每列可向上向下滚动.要求编一程序,让电脑找出用最少的步数从初态到末态的变换方法,并在屏幕上表
pascal 语言 宽度搜索 平面魔方问题
平面魔方的初态和末态如下所示,每行可向左向右滚动,每列可向上向下滚动.要求编一程序,让电脑找出用最少的步数从初态到末态的变换方法,并在屏幕上表示出来.
初态:\x05\x05\x05\x05末态:
(1,0,0,1)\x05\x05(0,0,1,1)
(0,0,1,1)\x05\x05(0,1,1,1)
(0,1,1,0)\x05\x05(1,0,0,1)
(0,1,1,0)\x05\x05(0,0,1,0)
关于这道题的判重我只想到建一个十六维数组.

pascal 语言 宽度搜索 平面魔方问题平面魔方的初态和末态如下所示,每行可向左向右滚动,每列可向上向下滚动.要求编一程序,让电脑找出用最少的步数从初态到末态的变换方法,并在屏幕上表
楼上正解.不妨把a11、a12、a13..排成一列,当做二进制算出对应的十进制数表示一种状态. 总共有2^16=65536种状态,integer就够了,(一般都是想都不想直接用longint)
建议单独编个函数来求状态,程序可以清楚一些.