十五谜问题
程序设计要求:在一个4 x 4的方形棋盘上放置了15块编了号的牌,还剩下一个空格(如图1所示)。棋盘上号牌的一次合法移动是指将位于空格四周(上,下,左,右)的一块号牌移入空格位置的四种移动方式。设初始状态如图1所示,要求经过最少次数的合法移动转换成如图2所示的目标状态,请显示空白块移动的过程。
1 2 3 4
5 6 8
9 10 7 11
13 14 15 12
(图1)
1 2 3 4
5 6 7 8
9 10 11 12
13 14 15
>> 本文固定链接: http://www.vcgood.com/archives/2013
谁有C语言的DES 加密算法并且能和JAVA 交互的?感激不尽
连个回复的都没有!!!失望
看看我的代码吧!
#include <iostream>
using namespace std;
void Display();
int a[16] = {1,2,3,4,5,6,0,8,9,10,7,11,13,14,15,12};
void main()
{
Display();
int j = 0;
for(int i = 0; i < 3; i++)
{
while(a[j] != 0)
{
j++;
}
a[j] = a[j-1] + 1;
int num = a[j];
while(a[++j] != num)
;
a[j] = 0;
Display();
}
char ch;
cin >> ch;
}
void Display()
{
for(int i = 0; i < 4; i++)
{
for(int j = 0; j < 4; j++)
{
if(a[i*4+j] == 0)
{
cout << ” ” << ‘\t’;
}
else
{
cout << a[i*4+j] << ‘\t’;
}
}
cout << endl;
}
cout << endl;
}
恩,挺有意思。
不过可能定义个二维数组好些! 同意吗?
二维数组?a[4][4],恩,可以吧