我正在尝试实施Knight-Distance中Chess Programming Wiki所述的绝对等级文件距离,但我对int
a
的内容感到有些困惑和b
应该在
int knightDistance(int a, int b).
你不需要两套坐标来计算出来(开始位置和目的地)吗? 我想也许他们使用0,0作为开始,然后你只是给出了开始和结束位置之间的差异,但这会产生糟糕的输出。
这应该如何工作,这个算法适用于任何大小的网格,还是只有8×8?
答案 0 :(得分:2)
我认为a
和b
是与当前位置的等级和文件距离增量。从对称性来看,只有当前位置与所需目标之间的差异。