我有一个 36x25 的节点网格,我希望从斜边对面的角落搜索所有三角形数。这是我正在考虑的伪代码,但是这种方法只能在它到达网格的下一个角之前有效,而且我确信有一种更简单的方法可以递归地执行此操作,我只是很难弄清楚。
for(int iteration; iteration < maxDistance(49); iteration++)
{
int xAdd = iteration;
int yAdd = 0;
while(xAdd != 0)
{
checkStuff(nodeGrid[x+xAdd][y+yAdd]);
xAdd--;
yAdd++;
}
}
我想要程序做什么:
[0][1][2][3][4][5]
[1][2][3][4][5][6]
[2][3][4][5][6][7]
[3][4][5][6][7][8]
[4][5][6][7][8][9]
按此顺序检查。所以首先检查所有值为 0 的图块,然后是 1,依此类推。
注意:在这种情况下,我的功能只能在第 4 个设置图块之前工作。再往前走,就会越界。