有N堆石子。A B两个人轮流拿,A先拿。每次只能从一堆中取若干个,可将一堆全取走,但不可不取,拿到最后1颗石子的人获胜。假设A B都非常聪明,拿石子的过程中不会出现失误。给出N及每堆石子的数量,问最后谁能赢得比赛。 例如:3堆石子,每堆1颗。A拿1颗,B拿1颗,此时还剩1堆,所以A可以拿到最后1颗石 ...
分类:
其他好文 时间:
2018-07-18 20:47:49
阅读次数:
125
题目描述 众所周知,Alice和Bob非常喜欢博弈,而且Alice永远是先手,Bob永远是后手。 Alice和Bob面前有3堆石子,Alice和Bob每次轮流拿某堆石子中的若干个石子(不可以是0个),拿到所有石子中最后一个石子的人获胜。这是一个只有3堆石子的Nim游戏。 Bob错误的认为,三堆石子的 ...
分类:
其他好文 时间:
2018-07-15 23:21:48
阅读次数:
237
题目:https://www.lydsy.com/JudgeOnline/problem.php?id=3105 首先,要先手必胜,就不能取后让剩下的火柴中存在异或和为0的子集,否则对方可以取成异或和为0的状态,那么必败; 可以贪心地从大到小排序,如果一堆火柴可以被之前的一些火柴堆(基)异或表出,那 ...
分类:
其他好文 时间:
2018-07-02 21:34:47
阅读次数:
201
Description 小约翰经常和他的哥哥玩一个非常有趣的游戏:桌子上有n堆石子,小约翰和他的哥哥轮流取石子,每个人取的时候,可以随意选择一堆石子,在这堆石子中取走任意多的石子,但不能一粒石子也不取,我们规定取到最后一粒石子的人算输。小约翰相当固执,他坚持认为先取的人有很大的优势,所以他总是先取石 ...
分类:
其他好文 时间:
2018-06-30 21:55:39
阅读次数:
144
Nim游戏的规则是: 1. 有N个石头(肯定大于0否则就没法玩了) 2. 有两个玩家(因为就你们两个好基友) 3. 自己先下手(够腹黑的,嘿嘿) 4. 每次必须拿1-3个石头(不能太贪婪) 5. 最后拿完的算赢(全部都归最后拿完的那个人,如果石头是钻石的话……,这结果会不会导致基友感情破裂?) 通过 ...
分类:
其他好文 时间:
2018-06-27 21:05:49
阅读次数:
174
"Portal bzoj3105 新Nim游戏" Solution 转化一下问题 首先看一下原来的Nim游戏,先手必胜的条件是:每堆数量的异或和不为$0$ 所以在新的游戏中,如果要保证自己(先手)有必胜策略的话,那必须要保证到一开始先手拿走若干堆之后,后手无法拿走若干堆使得剩下每堆的数量异或和为$0 ...
分类:
其他好文 时间:
2018-06-23 20:57:06
阅读次数:
168
题目来源:http://acm.hdu.edu.cn/showproblem.php?pid=1730 Nim博弈为:n堆石子,每个人可以在任意一堆中取任意数量的石子 n个数异或值为0就后手赢,否则先手赢 将这题转化成Nim游戏 可以在任意一行中移动任意距离,可以向左或右,但是仔细观察发现,其实只能 ...
分类:
其他好文 时间:
2018-06-02 16:35:55
阅读次数:
166
题解: 这个东西我觉得好像并没有意思。。 就是看书的事情 定义sg(x)函数 当且仅当为0时是必败状态 每个点的sg值等于mex(后继状态) mex是指最小的没有出现在后继状态中的值 然后多组就是将sg值^起来 然后nim游戏可以证明出sg(x)=x 所以就等于所有的^起来啊 然后下面是蓝书上的几道 ...
分类:
其他好文 时间:
2018-05-25 01:33:01
阅读次数:
117
Description 传统的Nim游戏是这样的:有一些火柴堆,每堆都有若干根火柴(不同堆的火柴数量可以不同)。两个游戏者轮流操作,每次可以选一个火柴堆拿走若干根火柴。可以只拿一根,也可以拿走整堆火柴,但不能同时从超过一堆火柴中拿。拿走最后一根火柴的游戏者胜利。 本题的游戏稍微有些不同:在第一个回合 ...
分类:
其他好文 时间:
2018-05-03 14:24:12
阅读次数:
185
bz不支持提交了,我觉得我写的应该没啥问题。 题面https://www.lydsy.com/JudgeOnline/problem.php?id=3759 我们知道Nim游戏如果所有石子数异或和等于0,那么后手必胜。所以作为先手,策略是这样的: 如果存在异或和为0的子集,那么一定存在一个最大的异或 ...
分类:
其他好文 时间:
2018-05-02 02:33:53
阅读次数:
133