原题链接 解法一:枚举+搜索 解法二:Nim博弈 Nim游戏是博弈论中最经典的模型(之一),它又有着十分简单的规则和无比优美的结论 Nim游戏是组合游戏(Combinatorial Games)的一种,准确来说,属于“Impartial Combinatorial Games”。 满足以下条件的游戏 ...
分类:
其他好文 时间:
2017-02-05 18:06:19
阅读次数:
168
对于先手而言 必败状态(P position)-->所有后继都是必胜状态 必胜状态(N position)-->有一个后继是必败状态 没有后继的状态是必败状态 1.Ferguson博弈 进行游戏需要用到两个盒子,在游戏的开始,第一个盒子中有n枚石子,第二个盒子中有m个石子(n, m > 0)。参与游 ...
分类:
其他好文 时间:
2016-11-12 09:33:27
阅读次数:
369
题目链接: 1661 黑板上的游戏 Alice和Bob在黑板上玩一个游戏,黑板上写了n个正整数a1, a2, ..., an,游戏的规则是这样的:1. Alice占有先手主动权。2. 每个人可以选取一个大于1的数字擦去,并写上一个更小的数字,数字必须是整数,然后由对方进行下一次操作。3. 如果擦去的 ...
分类:
其他好文 时间:
2016-08-30 19:22:44
阅读次数:
118
题目链接: A Simple Nim Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others)Total Submission(s): 181 Accepted Submission(s): 11 ...
分类:
其他好文 时间:
2016-08-05 00:28:24
阅读次数:
311
人生有“三晃”:一晃大了,一晃老了,一晃没了。我晃一下就够了。。。 以下为网上搜集资料的汇总: 组合游戏定义: 1、有且仅有两个玩家 2、游戏双方轮流操作 3、游戏操作状态是个有限的集合(比如:取石子游戏,石子是有限的,棋盘中的棋盘大小的有限的) 4、游戏必须在有限次内结束 5、当一方无法操作时,游 ...
分类:
其他好文 时间:
2016-07-30 00:30:47
阅读次数:
172
题意: 给n堆石子,每堆有ai个,每次可以取每堆中任意数目的石子;但是上一次操作的人没有将一堆全部取走,那么下一个人还要在那一堆取; 思路: 每次取到这堆就剩一个的策略; AC代码: ...
分类:
其他好文 时间:
2016-07-24 22:30:00
阅读次数:
129
题意: 有两个相同的盒子,一个盒子里面有n个球,另一个盒子里面有1个球,每次清空球较少的那个盒子,然后从另外的一个盒子里拿到空盒子里使得操作后两个盒子至少有一个球,判断是先手还是后者胜; 思路: 跟每次拿走至少一个且不超过一半那个一样的sg函数; AC代码: ...
分类:
其他好文 时间:
2016-07-24 22:18:44
阅读次数:
170
题意: 有n堆石子,分别有a1,a2,...,an个,两个游戏者轮流操作,每次可以选一堆m拿走至少一个且不超过一半的石子,谁不能拿石子就算输; 思路: a1太大打印sg表找规律,然后就是异或和了; AC代码: ...
分类:
其他好文 时间:
2016-07-24 20:57:31
阅读次数:
211
题目链接: Chess Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others) Problem Description Alice and Bob are playing a special c ...
分类:
其他好文 时间:
2016-07-24 20:39:10
阅读次数:
185
描述 http://www.lydsy.com/JudgeOnline/problem.php?id=1022 反Nim游戏裸题.详见论文<组合游戏略述——浅谈SG游戏的若干拓展及变形>. 分析 1 #include <bits/stdc++.h> 2 using namespace std; 3 ...
分类:
其他好文 时间:
2016-07-07 09:49:11
阅读次数:
172