博弈
小冷在努力
这个作者很懒,什么都没留下…
展开
-
POJ 2234 Matches Game 尼姆博弈
这道题是尼姆博弈的模板题,就是求几个数的异或。就状态过程中,会出现奇异局势,这几个数的异或若为0,这这种状态就是异或局势,异或局势就是说轮流取东西,最后取光者得胜,谁要是面对奇异局势,谁就会输,例如(0,0,0)。 代码如下: #include #include using namespace std; int main() { int n,a,s[25]; while(scanf("%原创 2015-04-17 17:32:24 · 297 阅读 · 0 评论 -
POJ 1067 取石子威佐夫博奕
http://blog.csdn.net/pi9nc/article/details/27713717 这里总共讲述了三个博弈,很经典看看你就明白是怎么回事了 代码如下: #include #include #include using namespace std; int main() { int a,b; while(scanf("%d%d",&a,&b)!=EOF) { int原创 2015-04-17 10:57:18 · 379 阅读 · 0 评论 -
hdu oj 2177 取(2堆)石子游戏 威佐夫博奕
代码如下: //威佐夫博奕模板 谁先面临奇异局势 谁输。(ak,bk) 之间的关系 #include #include #include #include #include #include using namespace std; const int f = 1000006; map > vis; int ans[f][2]; int main() { int a,b,i,j; /原创 2015-04-17 17:07:02 · 499 阅读 · 0 评论 -
poj 2975 Nim 尼姆博弈
这道题估计大部分人都有一个疑惑点,或者是对尼姆博弈有一个疑惑点,就是为什么各个堆之间为什么要异或,其实这个点我也不知道,百度了很多的答案,也是没搞明白该怎样去理解比较好。所以求那些搞明白的大牛们讲解一下 代码如下: #include #include using namespace std; int main() { int a[1010],i,n; while(scanf("%d",&原创 2015-04-17 21:59:53 · 259 阅读 · 0 评论