游戏描述: 桌上有n堆石子,游戏双方轮流取石子,每次只能从一堆中取出任意数目的石子,不能不取,取走最后一个石子者失败。 结论: 先手必胜,当且仅当: ①、所有堆的石子数都为1,且游戏的SG值为0。 ②、存在堆的石子数大于1,且游戏的SG值不为0。 ...
分类:
其他好文 时间:
2018-10-14 19:18:05
阅读次数:
156
题目链接 题意 : 中文题、点链接 分析 : 前置技能是 SG 函数、NIM博弈变形 每次可取石子是约数的情况下、那么就要打出 SG 函数 才可以去通过异或操作判断一个局面的胜负 打 SG 函数的时候、由于 N 很大 所以不能使用递归的方式打表、会爆栈 还有要预处理每个数的约数 打出 SG 函数之后 ...
分类:
其他好文 时间:
2018-09-07 20:14:18
阅读次数:
179
这道题也是一个博弈论 根据一个性质 对于\( Nim \)游戏,即双方可以任取石子的游戏,\( SG(x) = x \) 所以直接读入后异或起来输出就好了 代码 ...
分类:
其他好文 时间:
2018-09-01 15:59:00
阅读次数:
111
取石子游戏 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 8159 Accepted Submission(s): 4950 Problem D ...
分类:
其他好文 时间:
2018-08-30 10:56:13
阅读次数:
142
取石子游戏 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 9725 Accepted Submission(s): 5605 Problem D ...
分类:
其他好文 时间:
2018-08-30 02:12:19
阅读次数:
172
http://poj.org/problem?id=1067 取石子游戏 Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 45409 Accepted: 15533 Description 有两堆石子,数量任意,可以不同。游戏开始 ...
分类:
其他好文 时间:
2018-08-26 01:10:54
阅读次数:
167
.博弈- 取石头 (10分) C时间限制:3000 毫秒 | C内存限制:3000 Kb 题目内容: m堆石子,甲乙两人轮流取,每次需先选择1堆,并取任意数目的石子. 最后取完者的获胜. 规定甲先取。 输入描述 可能有多组测试数据。每组的第一行是m, 第二行是m个整数,表示每堆石子的数目。 输出描述 ...
分类:
其他好文 时间:
2018-08-26 00:06:42
阅读次数:
328
处理何种问题:有n个石子,两个人轮流取石子,规定至少取1个,最多取k个,最后取光者获胜。 性能:时间复杂度为O(1) 原理:n%(k+1)==0,后手必胜(先手无论怎么取,后手只需要补全至k+1个即可);n%(k+1)!=0,先手必胜(先手只需要第一次将n%(k+1)的余数取尽,先手就转成“后手”了 ...
分类:
其他好文 时间:
2018-08-15 20:38:12
阅读次数:
135
链接:https://www.luogu.org/problemnew/show/P2197 题目描述 甲,乙两个人玩Nim取石子游戏。 nim游戏的规则是这样的:地上有n堆石子(每堆石子数量小于10000),每人每次可从任意一堆石子里取出任意多枚石子扔掉,可以取完,不能不取。每次只能从一堆里取。最 ...
分类:
其他好文 时间:
2018-08-10 21:32:51
阅读次数:
168
" Portal bzoj1022 " Solution ? 这题其实是裸的反Nim,这里主要是为了写反Nim游戏的证明 ? 首先给出反Nim(anti nim)的定义和结论: 【定义】桌子上有 N 堆石子,游戏者轮流取石子; 每次只能从一堆中取出任意数目的石子,但不能不取;取走最后一个石子者败 【 ...
分类:
其他好文 时间:
2018-08-05 15:20:43
阅读次数:
158