X-man

导航

2013年10月5日 #

【转】博弈-翻硬币游戏

摘要: 一般的翻硬币游戏的规则是这样的:N枚硬币排成一排,有的正面朝上,有的反面朝上。我们从左开始对硬币按1到N编号。 第一,游戏者根据某些约束翻硬币,但他所翻动的硬币中,最右边那个硬币的必须是从正面翻到反面。例如,只能翻3个硬币的情况,那么第三个硬币必须是从正面翻到反面。如果局面是正正反,那就不能翻硬币了,因为第三个是反的。 第二,谁不能翻谁输。有这样的结论:局面的SG值为局面中每个正面朝上的棋子单一存在时的SG值的异或和。即一个有k个硬币朝上,朝上硬币位置分布在的翻硬币游戏中,SG值是等于k个独立的开始时只有一个硬币朝上的翻硬币游戏的SG值异或和。比如THHTTH这个游戏中,2号、3号、6号位.. 阅读全文

posted @ 2013-10-05 21:20 雨钝风轻 阅读(269) 评论(0) 推荐(0) 编辑

POJ 3710 Christmas Game

摘要: 知识储备: 解决办法(奇偶去环): (1) 对于长度为奇数的环,去掉其中任意一个边之后,剩下的 两个链长度同奇偶,抑或之后的 SG 值不可能为奇数,所 以它的 SG 值为 1; (2) 对于长度为偶数的环,去掉其中任意一个边之后,剩下的 两个链长度异奇偶,抑或之后的 SG 值不可能为 0,所以它 的 SG 值为 0;#include#include#include#includeusing namespace std;vectoredge[105]; //邻接表int mat[105][105]; //存放边的数量int low[105],dfa[105]; //Ta... 阅读全文

posted @ 2013-10-05 17:09 雨钝风轻 阅读(223) 评论(0) 推荐(0) 编辑

hdu 3590 PP and QQ

摘要: 知识储备: Anti-SG 游戏和 SJ 定理 [定义](anti-nim 游戏)  桌子上有 N 堆石子,游戏者轮流取石子。  每次只能从一堆中取出任意数目的石子,但不能不取。  取走最后一个石子者败。 [结论] 先手必胜当且仅当: (1)所有堆的石子数都为 1 且游戏的 SG 值为 0; (2)有些堆的石子数大于 1 且游戏的 SG 值不为 0。 叶子节点的 SG 值为 0;中间节点的 SG 值为它的所有子节点的 SG 值加 1 后的异或和。只能说入门时候的搜索是硬伤Orz,写个Dfs都得参考更严谨的代码(考虑到输入顺序不一定从根节... 阅读全文

posted @ 2013-10-05 16:33 雨钝风轻 阅读(332) 评论(0) 推荐(0) 编辑

博弈进阶

摘要: 储备知识: 贾志豪:《组合游戏略述——浅谈SG游戏的若干拓展及变形》 http://wenku.baidu.com/view/25540742a8956bec0975e3a8.html 王晓珂:《解析一类组合游戏》 核心策略:归纳,分解,转化 组合游戏以下题目如阶梯般一步步揭开博弈神秘的面纱... 阅读全文

posted @ 2013-10-05 10:10 雨钝风轻 阅读(534) 评论(0) 推荐(0) 编辑