题意:n堆石子,每次可以从某堆中拿走若干,也可以把此堆分成两个非空堆,谁无法操作了谁输。
题解:首先我们可以打个SG函数来暴力出解,但是显然这会T。
但是不要害怕,我们打完以后发现了一个貌似对的规律:
对于所有的k >= 0,有 sg( 4k+1 ) = 4k+1; sg(
4k+2 ) = 4k+2; sg( 4k+3 ) = 4k+4; sg( 4k+4 ) = 4k+3。...
分类:
其他好文 时间:
2015-01-13 09:03:56
阅读次数:
199
题意:跟NIM游戏差不多,不过是谁不能操作了,谁赢。
定理:
NIM游戏规则取最后一个石子输
适用范围:对于任意一个Anti-SG
游戏,当局面中所有的单一游戏
的SG值为0时,游戏结束。
(1)SG==0,有某单一游戏的SG>1。(败)
(2)SG!=0,有某单一游戏的SG>1。(胜)
(3)SG==0,无某单一游戏的SG>1。(胜)
(4)SG!=0,无某单一游戏的S...
分类:
其他好文 时间:
2015-01-13 09:00:03
阅读次数:
162
题意:多组数据。
问先手有多少种取法使自己必胜。
题解:
首先Nim游戏的异或思想就不说了。
然后我们发现对于某个数,如果其它数的异或和比它小,那么先手拿掉这个数的一部分就可以使所有数异或为0,
先求出所有数异或和,然后再枚举每个数,异或一下就相当于其它所有数的异或和了,
然后可以进行判断出解。
长姿势:
^的优先级竟然比
以后但凡涉及位运算都要怒写()啊!...
分类:
其他好文 时间:
2015-01-11 14:53:06
阅读次数:
166
NIM取子游戏是由两个人面对若干堆硬币(或石子,或。。)进行的游戏,游戏由两个人进行,设有k>=1堆硬币,各堆含有n1,n2,n3,n4.....,nk个硬币,游戏的目的就是选取最后剩下的硬币。游戏规则如下:1)游戏人交替进行游戏;2)当轮到每个游戏人取子时,选择这些硬币中的一堆,并从所选的堆中取走...
分类:
其他好文 时间:
2014-12-04 22:58:35
阅读次数:
188
博弈问题这一题其实就是Nim游戏因为每一个数都可以写成N=p1^a1*p2^a2*...*pn^an(pi为素数)的形式每次变成一个因数,就相当于取走一个或者多个pi所以每一个number就相当于Nim中的有(a1+a2+..an)个石头这样就变成了裸了Nim游戏直接套模板 1 #include ....
分类:
其他好文 时间:
2014-11-09 23:34:51
阅读次数:
258
题目链接:hdu 5088 Revenge of Nim II
题目大意:Nim游戏的变形,因为游戏很不公平,所以现在转变规则,后手可以选取若干堆石子剔除,剩下堆的石子用
来进行游戏,问说后手可能胜利吗。
解题思路:其实即为取出非0堆石子,使得Nim和为0。因为是Nim和(亦或),所以以每个位建立方程,列出40个方
程,进行亦或形式的高斯消元,因为全0肯定为一解,所以方程肯...
分类:
其他好文 时间:
2014-11-07 19:11:41
阅读次数:
289
【题意】:在一个常规的NIM游戏里,你可以在每堆石子拿走任意数量的石子,问求使先手必败的情况下拿走石子数量的最小值。【知识点】:位运算,DP【题解】:一道精致的位运算的好题目,细节有不少。具体解释在代码内。【代码】: 1 #include 2 #include 3 #include 4 #in...
分类:
其他好文 时间:
2014-11-06 21:48:38
阅读次数:
291
BestCoder Round #16
题目链接
这场挫掉了,3挂2,都是很sb的错误 23333 QAQ
A:每个数字,左边个数乘上右边个数,就是可以组成的区间个数,然后乘的过程注意取模不然会爆掉
B:dp,dp[i][2]记录下第一长的LIS,和第二长的LIS,哎,转移的时候一个地方写挫掉了导致悲剧啊QAQ
C:首先如果知道Nim游戏的,就很容易转化问题为,一些数...
分类:
其他好文 时间:
2014-11-01 23:16:51
阅读次数:
327
题目大意:反Nim游戏,即取走最后一个的人输
首先状态1:如果所有的堆都是1,那么堆数为偶先手必胜,否则先手必败
然后状态2:如果有两个堆数量相同且不为1,那么后手拥有控场能力,即:
若先手拿走一堆,那么后手可以选择将另一堆留下1个或者全拿走,使这两堆最终只剩1个或0个;
若先手将一堆拿剩一个,那么后手可以选择将另一堆留下一个让先手拿或全拿走,使这两堆最终只剩1个或0个;
若先手将一堆拿...
分类:
其他好文 时间:
2014-10-28 20:07:01
阅读次数:
153
怎么又是博弈论。。。我去Orz hzwer,这道题其实是可以转化成Nim游戏的!"第一步:先从n根巧克力棒中取出m(m>0)根,使得这m根巧克力棒的xor和为0,同时使得剩下的n-m根巧克力棒无论怎么取,xor和都不为0。m根巧克力棒的xor和为0 把nim游戏的必败状态留给对方剩下的n-m根巧克力...
分类:
其他好文 时间:
2014-10-26 19:44:26
阅读次数:
240