在图中获胜给定游戏的策略
-
28-09-2020 - |
题
游戏如下。两个玩家正在玩游戏,球员1和玩家2,其中第一名玩家通过命名一个Hero $ h_1 $ ,然后播放器2与恶棍 $ v_1 $ 谁在带 $ h_1 $ 的电影中播放。然后,玩家1与另一个英雄 $ h_2 $ 返回,谁在电影中与 $ v_1 $ 一起播放,等等。每个英雄和恶棍都可以最多使用一次。第一个不能命名任何角色的球员(可用的英雄/恶棍没有常见的电影,其中包含其他玩家的最后选择),失去了游戏。玩家1始终开始游戏。
输入是一组英雄 $ h $ ,一组恶果 $ v $ ( $ | h |= | v | \ geq 1 $ )和一系列电影 $ m $ ,每部电影都是一部在那部电影中出现的英雄和恶棍。
问题是:可以基于 $ h $ , $ v $ 和 $ m $ ,决定哪个玩家赢得游戏假设两个玩家正在最佳播放?
示例:
鉴于以下数据:英雄是 Iron Man , Captain America , Thor 和 Spider-Man 。恶棍是鞭打, Ultron , Thanos 和秃鹰。这部电影是复仇者:无限战争(星星钢铁侠,美国船长,雷切和蜘蛛侠)和蜘蛛侠:Homecoming (Stars Iron Man,Vulture和Staring)蜘蛛侠)。你可以决定哪个玩家有胜利策略?我的方法是使用最大的二分体匹配来了解哪个玩家具有胜利策略,因为我们可以用两组分割数据,即 $ h $ 和 $ v $ 并在这两组之间具有关系。 HopCroft-Karp算法可以采用两种这样的组,找出最大基数。如果我错了,请纠正我:在有一个完美匹配的情况下,玩家2赢,否则玩家1胜。每当有一个完美的匹配时,它意味着玩家2一直对球员1命名的英雄答案。
你怎么解决这个问题?是否有更好,更高效的解决方案,而不是一些最大的二分匹配。
解决方案
短答案是,如果相应的图表承认“封面”设置 $ h $ 。
这里有点解释。
你的想法几乎是正确的。但是,证明不直观,如果您需要设计一个理论问题,或者您需要设计精确的获胜策略,并且不仅输出获胜播放器,您可能会错过您需要的一些细节。
所以让我们从答案中遗漏的部分开始。假设给定实例对应于承认完美匹配的图表。根据您的策略,播放器2在这种情况下赢得了正确的。现在假设相同的例子是一个更有恶棍或10个更大的恶棍或一千个。显然,员工两个仍然赢得了因为我们为他们分配的恶棍而赢得了胜利,只有帮助第二个玩家。所以你的索赔并不总是保持。但是,您的答案非常接近我的索赔,并具有相同的直觉。它只是缺少一点形式。
索赔。假设两个玩家在最佳播放,如果才能才能赢得一个实例 $ i $ ,相应的图不承认匹配饱和set $ h $ 。
所以这是什么意思?匹配饱和一组顶点 $ s $ ,如果 $ s $ 是事件到a的每个顶点匹配中的顶点。 现在我们证明了索赔。当图表承认饱和Set $ H $ 和两个用于播放器时,当图表不承认这种匹配时,我们展示了两个获胜策略。
证明。现在假设图表承认这样的匹配。让此匹配是 $ m $ 。该战略如下。只要玩家一个没有丢失,对于每次选择 $ h \以h $ 为玩家,选择 $ v \在V $ 中,顶点匹配 $ h $ $ m $ 。
直接从播放器两个顶点唯一且邻近玩家的选择(由于匹配的属性)的事实遵循。直观地,球员在某些时候会耗尽移动(可能在设置的所有英雄之后 $ h $ )。
现在假设图表不承认匹配饱和 $ h $ ,根据HALL的定理,有一个子集 $ a \ subseteq h $ ,这样 $ | n(a)| <$ 。选择一个最小的包含明智的集合。我们声称存在一个匹配的 $ m'$ ,它饱和 $ n(a)$ 。否则否则,再次由于大厅,还有一个子集 $ s \ subseteq n(a)$ 这样 $ | n (s)|现在策略如下。在 $ a $ 中选择一个顶点,它不是 $ m $ 中的任何边缘。由于 $ | n(a)|因此存在这样的顶点<| A | $ 。首先选择此顶点,对于播放器二,每个选择 $ v \ v in v $ ,选择顶点 $ h \ h $ 匹配 $ v $ $ m'$ 。
再次,很容易看到播放器两个在某些时候耗尽移动(可能在选择 $ n(a)$ 中的所有顶点之后因此,玩家一个胜利。