|
发表于 2004-6-28 18:34:00
|
显示全部楼层
Re:问六子棋的算法
可以先算出该数字的行列位置,继而判断左右上下关系。
int ColWidth[7] = {3, 4, 5, 6, 5, 4, 3}; // 各行分别放有多少数字,
// 第一行三个、第二行四个
计算数字n的行号y和列号x :
for(i=0 to 7,n<ColWidth时终止 ) {
n=n-ColWidth;
}
y = i;
// 计算列号x
// 这里只要处理好单双数行的交叉,还有取好基准坐标,应该不难。
这只是我的思路,可能还有很多地方可以优化。或者有更巧妙的办法,也请你告诉我。呵呵。
|
|