[求助]九宫格
朋友们给我讲讲怎样实现九宫格的算法?九宫格:将1~9不重复的填入3X3的格子里,使横,竖,斜数字相加都相等.
谢谢诸位了!
//终于知道算法了,还以为是要产生一组随机数来一个个的测试.
void array(int a[3][3])
{
int k = 1,
i = 0,
j = 1;
a[0][1] = k++;
while (k <= 9)
{
i--;
j++;
if (i < 0 && j > 2)
{
i += 2;
j --;
}
if (i < 0)
{
i = 2;
}
if (j > 2)
{
j = 0;
}
if (a[i][j] == 0)
{
a[i][j] = k++;
}
else
{
i += 2;
j--;
a[i][j] = k++;
}
}
}