有N堆石子。A B两个人轮流拿,A先拿。每次只能从一堆中取若干个,可将一堆全取走,但不可不取,拿到最后1颗石子的人获胜。假设A B都非常聪明,拿石子的过程中不会出现失误。给出N及每堆石子的数量,问最后谁能赢得比赛。 例如:3堆石子,每堆1颗。A拿1颗,B拿1颗,此时还剩1堆,所以A可以拿到最后1颗石 ...
分类:
其他好文 时间:
2018-09-15 17:34:48
阅读次数:
105
Matches Game poj-2234 题目大意:n堆石子的Nim游戏,anti-SG。 注释:$1\le n\le 20$。 想法:用Colon定理即可。具体见:小约翰的游戏 最后,附上丑陋的代码... ... 小结:Nim游戏强强强。 ...
分类:
其他好文 时间:
2018-09-09 20:31:59
阅读次数:
132
nim游戏的先手必胜条件是所有堆的火柴个数异或和为0,也就是找一个剩下火柴堆数没有异或和为0的子集的方案,且这个方案保证剩下的火柴个数总和最大 然后我就不会了,其实我到现在也不知道拟阵是个什么玩意…… 详见:https://blog.csdn.net/wyfcyx_forever/article/d ...
分类:
其他好文 时间:
2018-09-06 18:00:45
阅读次数:
190
可以说成是树上的NIM游戏嘛 POJ3710 再树上删边,树是带环的,然后基本题意还是和NIM游戏一致 按环分类讨论,如果是奇数环 所有后继SG值都会是偶数,所以这个状态SG为1 把环缩成一个点+1条边 如果是偶数环,那么后继SG非0,此环SG=1,就将环缩为1个点 对于环,利用tarjan+栈预处 ...
分类:
其他好文 时间:
2018-09-03 19:31:38
阅读次数:
368
这道题也是一个博弈论 根据一个性质 对于\( Nim \)游戏,即双方可以任取石子的游戏,\( SG(x) = x \) 所以直接读入后异或起来输出就好了 代码 ...
分类:
其他好文 时间:
2018-09-01 15:59:00
阅读次数:
111
你和你的朋友,两个人一起玩 Nim游戏:桌子上有一堆石头,每次你们轮流拿掉 1 - 3 块石头。 拿掉最后一块石头的人就是获胜者。你作为先手。 你们是聪明人,每一步都是最优解。 编写一个函数,来判断你是否可以在给定石头数量的情况下赢得游戏。 示例: 输入: 4 输出: false 解释: 如果堆中有 ...
分类:
其他好文 时间:
2018-08-25 00:43:45
阅读次数:
214
链接:https://www.luogu.org/problemnew/show/P2197 题目描述 甲,乙两个人玩Nim取石子游戏。 nim游戏的规则是这样的:地上有n堆石子(每堆石子数量小于10000),每人每次可从任意一堆石子里取出任意多枚石子扔掉,可以取完,不能不取。每次只能从一堆里取。最 ...
分类:
其他好文 时间:
2018-08-10 21:32:51
阅读次数:
168
" Portal bzoj1022 " Solution ? 这题其实是裸的反Nim,这里主要是为了写反Nim游戏的证明 ? 首先给出反Nim(anti nim)的定义和结论: 【定义】桌子上有 N 堆石子,游戏者轮流取石子; 每次只能从一堆中取出任意数目的石子,但不能不取;取走最后一个石子者败 【 ...
分类:
其他好文 时间:
2018-08-05 15:20:43
阅读次数:
158
好久之前看的sg函数了 好像就记住一个nim博弈qwq 第一次啊看的时候很迷,现在感觉可以了qwq 首先我们来看一个其他的游戏。(以下游戏只有两个人参与,且足够聪明) 两个人在一张圆形的桌子上放等大的盘子,最后一个无法放盘子的人输掉比赛 很显然,先手必胜。 为什么? 第一个人可以将盘子放在桌子的中心 ...
分类:
其他好文 时间:
2018-08-02 20:51:26
阅读次数:
199
P4301 [CQOI2013]新Nim游戏 题目描述 传统的Nim游戏是这样的:有一些火柴堆,每堆都有若干根火柴(不同堆的火柴数量可以不同)。两个游戏者轮流操作,每次可以选一个火柴堆拿走若干根火柴。可以只拿一根,也可以拿走整堆火柴,但不能同时从超过一堆火柴中拿。拿走最后一根火柴的游戏者胜利。 本题 ...
分类:
其他好文 时间:
2018-07-22 11:31:30
阅读次数:
160