排序:
默认
按更新时间
按访问量

HDU 1536 S-Nim(sg函数)

这题两个坑点,g要排序,这个不难想。 最坑的是Hash数组要换成bool型,int就TLE到死吧。 #include #include #include using namespace std; const int maxn=1e4+5; int sg[maxn],g[maxn]; bool ...

2016-12-21 21:42:50

阅读数:99

评论数:0

HDU 5996 dingyeye loves stone(Nim 变形)

对数深度为偶数的节点,不需要考虑,因为这是必败态,留给对手,每次对手动,跟进就可以了。 对于奇数深度的节点是正常比赛的关键,并且这些节点符合Nim博弈。 #include using namespace std; const int maxn=1e5+5; int dep[maxn]; int...

2016-12-21 20:56:59

阅读数:108

评论数:0

HDU 1849 Rabbit and Grass(Nim game)

#include using namespace std; int main() { int n; while(cin>>n) { if(n==0) break; int k,ans=0; for(int i=0;...

2016-12-21 16:04:01

阅读数:101

评论数:0

HDU 1730 Northcott Game(Nim game)

把黑子与白子之间的距离当作每一堆石子的个数,那么只要第一次看一下异或后的值ans是否为0即可判断是否必败还是必胜了。 因为ans不等于0,那么先手走完一部后,后手面对的局面就是必败态了,后手移动以后,那一堆的石子增加了,那么先手只要使那一堆石子恢复成必败态即可。 ans等于0的情况也类似。#i...

2016-12-20 10:16:22

阅读数:75

评论数:0

HDU 1907 John(Nim game)

这题需要特判一下, 如果所有堆都为孤独堆,那么看n的奇偶性来判断胜负。 其他情况普通的Nim判断就可以了。#include using namespace std; int main() { int t; cin>>t; while(t--) { ...

2016-12-19 21:18:23

阅读数:79

评论数:0

HDU 2176 取(m堆)石子游戏(Nim game)

#include using namespace std; const int maxn=200000+5; int N[maxn]; int main() { int m; while(cin>>m) { if(m==0) break; ...

2016-12-19 21:01:13

阅读数:143

评论数:0

尼姆博弈(Nimm's Game)

尼姆博弈(Nimm's Game) 题型 尼姆博弈模型,大致上是这样的: 有3堆各若干个物品,两个人轮流从某一堆取任意多的物品,规定每次至少取1个,多者不限,最后取光者得胜。   分析 1、首先自己想一下,就会发现只要最后剩两堆物品一样多(不为零),第三堆为零,那面对这...

2016-12-19 20:50:08

阅读数:100

评论数:0

HDU 1850 Being a Good Boy in Spring Festival(Nim game)

#include using namespace std; const int maxn=100+5; int N[maxn]; int main() { int m; while(scanf("%d",&m)&&m) { ...

2016-12-19 20:49:38

阅读数:82

评论数:0

提示
确定要删除当前文章?
取消 删除
关闭
关闭