algorithm - 为公正的游戏寻找粗俗的值(value)观

标签 algorithm

我对 Sprague–Grundy 定理感到困惑,该定理在 CodeChef 上尝试解决公平游戏时被用在许多问题中。它只是指出,公正的游戏等同于 nimber 或 grundy 值。游戏的结果取决于所有子游戏的 grundy 值的异或。如果它为零,则第一个玩家输,如果他和对方玩家发挥最佳,否则获胜。但我遇到的问题是我们如何获得任何子游戏的基本值。例如,对于 nim 游戏,我们如何获得单堆的 nim 值。谢谢。

最佳答案

这些值是桩的大小。如果堆的大小为 1,2,3,则 1^2^3 == 0 会使玩家处于失败位置。 2^2^5 == 5 将是获胜位置。

关于algorithm - 为公正的游戏寻找粗俗的值(value)观,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20301308/

相关文章:

algorithm - 矢量化: friend 还是敌人? bsxfun/arrayfun 避免循环、repmat、置换、挤压等

algorithm - 在单独的列表中获取多项式的幂和系数

c# - 外汇订单简化算法

algorithm - LibSVM 和 LibLinear 有什么区别

c++ - 在没有额外空间的情况下合并 2 个大小相同的已排序数组?

algorithm - 在字符串中找到最长的相似子序列

algorithm - 从点数组创建绑定(bind)多边形

c++ - Kd-Tree 有缺陷的 K 最近邻

javascript - 自适应随机化算法

php - 从可变权重随机生成组合