【发布时间】:2011-07-02 08:54:53
【问题描述】:
对于方形网格,图块 A 和 B 之间的欧式距离为:
distance = sqrt(sqr(x1-x2)) + sqr(y1-y2))
对于被限制在方形网格中移动的演员,曼哈顿距离是我们必须行进的实际距离的更好衡量标准:
manhattanDistance = abs(x1-x2) + abs(y1-y2))
如何获得六边形网格中两块瓷砖之间的曼哈顿距离,如下面的红线和蓝线所示?
【问题讨论】:
-
我不确定你的问题是否有意义。你的意思是,你如何测量红线或蓝线的长度?
-
这个问题看起来不太合理,因为它描述了方格上的欧几里得距离,但似乎要求的是六边形格上的曼哈顿距离。
-
对不起,我的意思是通过最短路径之一从 A 移动到 B 的次数。
标签: algorithm path distance hexagonal-tiles