假设我们有一个棋盘(任意大小),并且有N个国王初始放置在N个方格上。现在假设我们选择N个新的方格,通过一系列合法移动(没有碰撞)将国王移动到这些方格上。目标是尽可能减少所有国王移动的总距离。我无法想出一种算法/修改方案,可以处理移动所有棋子的同时避免“碰撞”问题。该算法应该比递归选择目标方格并选择最小运输时间更快。希望有人能够提供宝贵的建议来解决这个问题。
谢谢
谢谢
当然,挡路的国王也可能有一个国王挡住了它的路,因此再次应用这些规则,直到到达可以移动的国王。
现在您可能会想知道如果每个移动的国王都有一个挡路的国王怎么办。 如果所有国王都要在一个周期内移动,那么这种情况只会发生一次... 但这是不可能发生的。
将所有国王移动到一个循环中会耗费步数,但不会更改棋盘的状态。 因此,这种情况意味着您在原始映射中找到的路径集合不是最小的。 由于它们是最小的,所以这种情况是不可能的。