【发布时间】:2018-10-15 23:28:06
【问题描述】:
给你一个 n x n 棋盘,上面有 k 个骑士(相同颜色)。有人在 k 个方格上洒了强力胶,如果骑士在其中一个方格上完成移动,它就会永远卡住。此外(这就是为什么我们不能拥有好东西的原因)有人切掉了一些方格,所以棋盘上有洞。您将获得骑士的初始位置。骑士像在普通国际象棋中一样移动,但与普通国际象棋不同的是,每回合所有的骑士都会同时移动(当然,被卡住的骑士除外)。在每一步结束时,一个方格不能被超过 1 个骑士占据。洞格也不能被骑士占据(但它们确实算作骑士可以跳过的格子)。给出一个 0(t x poly(n)) 时间的算法来确定你是否可以使用
我最初的想法是将这个问题表述为一个最大流问题,并使用 Ford-Fulkerson 算法来解决它。但我不确定我的节点和边缘应该是什么。任何的想法?谢谢!
【问题讨论】:
-
请不要将文字或代码作为图片发布;它无法被屏幕阅读器搜索、复制或阅读,并且可能无法在小屏幕上正常显示。
-
请问这是作业题吗?
-
@Codor:是的。我被困了很长时间。非常感谢您的帮助!
标签: algorithm graph big-o ford-fulkerson