
博弈
ACM_devil
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
BNU4210
题目:题目链接题意:题目的意思就是说给你一堆石子。这里的取石子规则是第一个人拿石子时不能全部拿走。后面的人取石子的时候索取的石子数目不能超过前面的人拿走的数目。现在给你石子的个数,问你最后的结果。分析:找规律,当石子的数目是2的幂次的时候,处于必败态。代码:#include #include #include #include #include原创 2013-10-23 20:08:40 · 794 阅读 · 0 评论 -
博弈小结(POJ ,HDU,ZOJ博弈问题小结)
转载请注明出处,谢谢http://blog.youkuaiyun.com/ACM_cxlove?viewmode=contents by---cxlove首先当然要献上一些非常好的学习资料:基础博弈的小结:http://blog.youkuaiyun.com/acm_cxlove/article/details/7854530经典翻硬币游戏小结:http://blog.csd原创 2013-07-29 19:27:26 · 1596 阅读 · 0 评论 -
HDU 4642 多校四-1011
题目:题目链接这是一道博弈题,刚开始的时候一直在想SG,一直不知道肿么写。天.后来发现,就只判断最后一个点就OK了。因为我们可以发现,假设刚开始右下角的是1,那么Alice把其反为0.Bob总会把这个反为1,这样Alice又可以翻这个硬币。就这样最后肯定是Alice赢。对应的,如果一开始右下角的是0,如果全是0,那么Bob直接胜利。否则Alice的任何一个操作都会把右下角的硬币反过来。这样Bo原创 2013-08-01 21:08:26 · 1138 阅读 · 0 评论 -
ZOJ 2083 SG博弈
题目:题目链接题目意思:题目是说两个人给n条线染色,每次可以染的长度是2.A先手,问A是赢还是输?假设双方都采取最好的策略分析:思路:裸求SG函数,和把一排石子分成若干堆相似,每次把长度为x的线段分成长度为i和x-i-2的线段,然后异或后求出mex值(mex值指不属于这个集合的非负整数),最后把所有子游戏的SG值异或求和代码:#include #include #inc原创 2013-07-24 20:51:48 · 996 阅读 · 0 评论 -
HDOJ2188(基本的巴什博弈,套用公式即可)
简单介绍一下巴什博弈定义和的公式的原理:(一)巴什博奕(Bash Game):只有一堆n个物品,两个人轮流从这堆物品中取物,规定每次至少取一个,最多取m个。最后取光者得胜。 显然,如果n=m+1,那么由于一次最多只能取m个,所以,无论先取者拿走多少个,后取者都能够一次拿走剩余的物品,后者取胜。因此我们发现了如何取胜的法则:如果n=(m+1)r+s,(r为任意自原创 2013-07-11 17:15:16 · 3601 阅读 · 0 评论 -
ZOJ 2686(规律博弈)
题目:题目链接题意:两人挪动棋子,每人可以选择一个权值为正的方向前进,并把该权值减小。当有人不能移动时,游戏结束;分析:我们会发现:朝两个方向,只要某个方向的连续的非0个数为奇数,先手就有必胜策略。因为当先手路过一条路线时,把该路线权值降为0,后手只能向前走,如果后手又把该权值归零,那先手必胜。如果不归零,那么先手直接返回来,并把权值归零,那么后手就没有办法移动了,先手必胜。所以,在上述条原创 2013-07-24 20:16:38 · 967 阅读 · 0 评论 -
ZOJ2290-GAME
题目:题目链接题目的意思:两个人轮流拿石子,其中每一个人拿的棋子数大于等于1小于等于对手上次拿的2倍,然后问你先手在胜利的情况下,第一步应该拿走多少?分析:加入石子数是2的话,那么先手只能拿走1个。这样先手必输。当n==3时,先手也是输。当是4个时。先手拿一个让对手面对3个,那么先手必胜,这样推下来,先手必输的数列数斐波那契数列。这样,当输入一个数字时,我们可以判断它是不是斐波原创 2013-07-24 19:22:46 · 1171 阅读 · 0 评论 -
ZOJ 2507 ANTI-SG博弈
题目:题目链接这道题目是一道反nim博弈,求的是谁拿走最后一颗石子输;分析:Anti-SG游戏和SJ定理。对于任意一个Anti-SG游戏,如果我们规定当局面中所有的单一游戏的SG值为0时,游戏结束,则先手必胜当且仅当:(1)游戏的SG函数不为0且游戏中某个单一游戏的SG函数大于1;(2)游戏的SG函数为0且游戏中没有单一游戏的SG函数大于1。这样,就直接判断就O原创 2013-07-24 21:11:16 · 1265 阅读 · 0 评论 -
HDOJ1527 [威佐夫博弈]【典型】
下面的是一道典型的威佐夫博弈(套模版的)附加:威佐夫博弈简介和解决:威佐夫博奕(Wythoff Game):有两堆各若干个物品,两个人轮流从某一堆或同时从两堆中取同样多的物品,规定每次至少取一个,多者不限,最后取光者得胜。这种情况下。我们用(ak,bk)(ak ≤ bk ,k=0,1,2,…,n)表示两堆物品的数量并称其为局势,如果甲面对(0,0),那么甲已经输了,这种局势原创 2013-07-11 20:15:37 · 1153 阅读 · 0 评论 -
HDOJ1850尼姆博弈(输出取法)
这道题和上一个差不多,就是尼姆博弈的应用,属于基础的尼姆博弈,除了判断是否是胜利外,还要输出胜态下第一步的可走的步数,即需要和原来的值相异或题目:小游戏:桌子上有M堆扑克牌;每堆牌的数量分别为Ni(i=1…M);两人轮流进行;每走一步可以任意选择一堆并取走其中的任意张牌;桌子上的扑克全部取光,则游戏结束;最后一次取牌的人为胜者。现在我们不想研究到底先手为胜还是为负,我只想问大家:原创 2013-07-11 16:49:34 · 1385 阅读 · 0 评论 -
HDOJ2176取(m堆)石子游戏尼姆博弈 -输出取法
尼姆博弈基本思想: 两人从n堆物品中取任意个,先取完者胜。 即将n堆物品的数量异或,得到的值如果为0,则先手败,反之先手胜。 如果要求先手在胜的条件下,得到奇异局势的方法数,则判断异或的值与每一堆原值异或后(结果应该表示该堆没有参加异或时的异或值)与原值比较大小,如果小于,则方法数加一。且对应的方法后,该堆的数目应变为异或的原创 2013-07-11 16:23:31 · 1455 阅读 · 0 评论 -
HDOJ1564Play a game(找规律博弈)
原题--题目链接题目大意:题目意思是输出里面的两个人玩走方格的游戏,谁走了最后一步就赢了这道题一开始木有思路,后来想了一下搜索,就大概试了一下,代码如下:#include #include #include #include #include #include #include #include #include #include #include #includ原创 2013-07-10 12:03:51 · 1104 阅读 · 0 评论 -
POJ2960 寻找SG值
题目:题目链接这道题目的意思是说:大意:有n堆石子,每堆石子个数已知,两人轮流从中取石子,每次可取的石子数x满足x属于集合S(k) = {s1,s2,s3...sk-1},问先拿者是否有必胜策略?分析:1.可将问题转化为n个子问题,每个子问题分别为:从一堆x颗石子中取石子,每次可取的石子数为集合S(k)中的一个数2.分析(1)中的每个子问题,易得:SG(x) = m原创 2013-07-29 20:48:47 · 983 阅读 · 0 评论 -
HDU4701-杭电多校第十场1006-博弈
题目:题目链接题意:这道题目的意思是说现在有N件商品,ALICE和BOB分别有钱A和钱B,现在给你N件商品的价格,两个人轮流买东西,但是有一个要求,就是当你买第I件商品的时候第I-1件已经被买走,每个人每次买得的商品的个数要大于等于一;谁买得最后一件商品谁就获胜,输出胜者:从头到尾都在搞这道题目,一直在分情况讨论,搞了好久,都是WA,一直不明白到底什么时候对于当前游原创 2013-08-22 20:44:02 · 1413 阅读 · 3 评论 -
BNU12889阶梯博弈
题目:题目链接 题意:题意如题汉语解释。就是把(x,y)的石子部分或全部移动到(x-1, y+1)或(x+1,y+1).谁不能移动就输 分析:就像阶梯博弈一样,阶梯博弈是将石子移动到第0层。而这题是将石子移动到最后一列。对于0层的移动,我们考虑的是奇数层,这里我们需要考虑的是偶数列,那么就把从最后一列开始数的偶数列的数字异或即可: 代码:#include #inc原创 2013-10-06 21:26:02 · 1078 阅读 · 0 评论 -
BNU29378-水博弈
题目:题目链接 题意:如题,就是判断长和宽的可以变成的偶数的个数 代码:#include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #inc原创 2013-10-06 20:36:52 · 789 阅读 · 0 评论 -
HDOJ1760[SG博弈]二维状态
题目:题目链接Problem Description曾经,Lele和他姐姐最喜欢,玩得最久的游戏就是俄罗斯方块(Tetris)了。渐渐得,Lele发觉,玩这个游戏只需要手快而已,几乎不用经过大脑思考。所以,Lele想出一个新的玩法。Lele和姐姐先拿出一块长方形的棋盘,这个棋盘有些格子是不可用的,剩下的都是可用的。Lele和姐姐拿出俄罗斯方块里的正方形方块(大小原创 2013-07-15 14:14:49 · 1164 阅读 · 0 评论 -
BNU17047-nim博弈
题目:题目链接 题意:题目意思很明确。就是现在有N个数字,每次一个人上去,可以把一个数字换成它的一个因子替换。直到有一个人使得所有的数字的乘积为1的时候,这个人就赢了。 分析:因为我们知道:对于任意一个数字A,我们都可以把这个数字写成A=p1^q1 * p2^q2 * ……* pn^qn (pi是质数)、所以我们每次的操作就相当于任选一个数字。然后从中拿走若干素数。这样的话原创 2013-10-06 20:24:42 · 788 阅读 · 0 评论 -
HDOJ2177 [威佐夫博弈](输出方案)
题目:题目连接题目:有两堆石子,数量任意,可以不同。游戏开始由两个人轮流取石子。游戏规定,每次有两种不同的取法,一是可以在任意的一堆中取走任意多的石子;二是可以在两堆中同时取走相同数量的石子。最后把石子全部取完者为胜者。现在给出初始的两堆石子的数目,如果轮到你先取,假设双方都采取最好的策略,问最后你是胜者还是败者。如果你胜,你第1次怎样取子? Input输入包含若干行原创 2013-07-12 10:49:21 · 1157 阅读 · 0 评论 -
基础博弈小结
有一种很有意思的游戏,就是有物体若干堆,可以是火柴棍或是围棋子等等均可。两个人轮流从堆中取物体若干,规定最后取光物体者取胜。这是我国民间很古老的一个游戏,别看这游戏极其简单,却蕴含着深刻的数学原理。下面我们来分析一下要如何才能够取胜。(一)巴什博奕(Bash Game):只有一堆n个物品,两个人轮流从这堆物品中取物,规定每次至少取一个,最多取m个。最后取光者得胜。原创 2013-07-21 22:21:42 · 962 阅读 · 0 评论 -
POJ2931-不平等博弈
题目:题目链接 论文题目:方展鹏-《浅谈如何解决不平等博弈问题》 用到了surreal number,看不太懂,路过大神求解释: #include #include #include #include #include #include #include #include #include #include #include #include #in原创 2013-08-30 16:02:14 · 1706 阅读 · 0 评论 -
HDU4111-2011成都
题目: 题目链接 题目意思:题目转换为熟悉的石子游戏就是,这里有m堆石子,每次可以把任意两堆合并,或者从某一堆中拿走一个,是不能操作谁就输了。 由于总数不变,最终总是要一个个拿完。那么有机会获胜的一方,肯定是先要把所有的合在一起,那么最终就拼奇偶数了。所以双方都要合并。而且如果没有某堆只有一个的话,对方是阻挡不住的,没有取完,便被合并了。所以就要考虑某堆只有一个原创 2013-08-27 15:18:27 · 1047 阅读 · 0 评论 -
HDU1536-nim
题目:题目链接 就是SG的本质,mex(minimal excludant)运算,这是施加于一个集合的运算,表示最小的不属于这个集合的非负整数。例如mex{0,1,2,4}=3、mex{2,3,5}=0、mex{}=0。 #include #include #include #include #include #include #include #include原创 2013-08-27 16:13:25 · 794 阅读 · 0 评论 -
HDU1404-sg
题目:题目链接 题意:一串由0~9组成的数字,可以进行两个操作:1、把其中一个数变为比它小的数;2、把其中一个数字0及其右边的所以数字删除。 两人轮流进行操作,最后把所以数字删除的人获胜,问前者胜还是后者胜。字符串长度为1-6,前者胜输出Yes,否则输出No. 分析:1是必败点那么所有被操作成1的数都是必胜点,以此类推由必败点按找游戏的规则反方向推出所有的必胜点原创 2013-08-27 14:47:57 · 980 阅读 · 0 评论 -
HDU4678博弈-多校八1003
题目:题目链接 题意:题目意思就是两人玩扫雷,按照变换的规则。如果点着空地那么周围不包含数字的空地都会被触发。这样:把点开空地时会打开的一大片区域看成一块,题目中说到,在一盘游戏中,一个格子不可能被翻开两次,说明任意两块空地不会包含相同的格子。那么就可以看成一个组合游戏。当空地旁边没连任何数字的时候,sg = 1(直接转移到0)。如果有一个数字,点空地可以转移到0,点数字可以转原创 2013-08-23 16:48:07 · 901 阅读 · 0 评论 -
HDOJ1079Calendar Game (找规律博弈)
其实这道题从找规律这方面来考虑的话还是比较容易一点的题目大意是: 两个家伙在区域赛前夕闲的无聊,然后玩一种无限纠结的游戏,随即给定一个日期,每次只能移动day OR month而且如果下一个月没有当前day的话 , 你就不能移动month,比如1月31日,你只能移动day 使其到2月1日,而不能移动月让其到达2月31日嗯,现在Adam需要你来找一个必胜策略原创 2013-07-10 11:14:19 · 1186 阅读 · 0 评论 -
POJ3710 [图上博弈]无向图删边 经典的删边游戏
题目:题目链接题目的意思就是我们熟悉的树的删边游戏,就是两个人轮流删除一个树枝,再把没有和树根相连的给丢掉,最后木有可以操作的输,给你N棵树,求谁会赢?分析:我们利用The Fusion Principle:任何环内的节点可以融合成一点而不会改变图的sg值。(下面我们称它为融合原则) 融合原则允许我们把任意一个根图简化为一个等效的可以通过冒号原则(即Colon Princi原创 2013-07-24 16:15:26 · 2291 阅读 · 0 评论 -
HDU/HDOJ2509 SG
题目:题目链接Problem DescriptionLet's consider m apples divided into n groups. Each group contains no more than 100 apples, arranged in a line. You can take any number of consecutive apples at one tim原创 2013-07-18 21:15:44 · 887 阅读 · 0 评论 -
象棋三五七(囧)这样AC了.....
题目:题目链接DescriptionDw放假回家和Daddy下象棋,突然想起有一种象棋游戏叫做象棋三五七,就是有三堆象棋,分别编号为1,2,3。第一堆有3个棋子,第二堆有5个棋子,第三堆有7个棋子,游戏规则如下:(1)两人交替拿棋子,每次都是DW先拿。(2)DW第一次只能在指定堆里拿指定数量的棋子。(3)接下来每人每次能在任意堆里拿任意棋子。(4)每人每次只能从一堆里拿原创 2013-07-18 21:01:47 · 2415 阅读 · 0 评论 -
HDU/HDOJ1851 nim博弈和巴什博弈的结合
题目:题目链接Problem DescriptionAgrael likes play a simple game with his friend Animal during the classes. In this Game there are n piles of stones numbered from 1 to n, the 1st pile has M1 stones,原创 2013-07-16 22:09:14 · 927 阅读 · 0 评论 -
HDOJ1848[SG博弈]
题目:题目链接Problem Description任何一个大学生对菲波那契数列(Fibonacci numbers)应该都不会陌生,它是这样定义的:F(1)=1;F(2)=2;F(n)=F(n-1)+F(n-2)(n>=3);所以,1,2,3,5,8,13……就是菲波那契数列。在HDOJ上有不少相关的题目,比如1005 Fibonacci again就是曾经的浙江原创 2013-07-15 15:35:02 · 1021 阅读 · 0 评论 -
HDU1849典型的SG应用
题目:题目链接Problem Description大学时光是浪漫的,女生是浪漫的,圣诞更是浪漫的,但是Rabbit和Grass这两个大学女生在今年的圣诞节却表现得一点都不浪漫:不去逛商场,不去逛公园,不去和AC男约会,两个人竟然猫在寝食下棋……说是下棋,其实只是一个简单的小游戏而已,游戏的规则是这样的:1、 棋盘包含1*n个方格,方格从左到右分别编号为0,1,2,…,n-1原创 2013-07-15 15:55:29 · 1131 阅读 · 0 评论 -
HDOJ1730[SG博弈]
题目:题目链接Problem Description Tom和Jerry正在玩一种Northcott游戏,可是Tom老是输,因此他怀疑这个游戏是不是有某种必胜策略,郁闷的Tom现在向你求救了,你能帮帮他么?游戏规则是这样的: 如图所示,游戏在一个n行m列(1 ≤ n ≤ 1000且2 ≤ m ≤ 100)的棋盘上进行,每行有一个黑子(黑方)和一个白子(白方)。执原创 2013-07-15 12:56:52 · 1053 阅读 · 0 评论 -
HDOJ1525 [找规律博弈]
题目;题目链接题目的意思是说:两个人玩游戏,给出a和b,每次一个人都可以从大的数当中减去小的数的倍数。当一个人把某一个数变成1时,这个人就赢了。先手是Stan,问最后是谁赢了....分析:假设两个数为a,b(a>=b)如果a==b.那么肯定是先手获胜。一步就可以减为0,b如果a%b==0.就是a是b的倍数,那么也是先手获胜。如果a>=2*b. 那么原创 2013-07-15 10:55:26 · 1067 阅读 · 0 评论 -
HDOJ1729 [SG博弈]
题目:题目链接原创 2013-07-15 10:02:44 · 1167 阅读 · 0 评论 -
HDOJ4315[阶梯博弈]
题目: 题目链接Problem DescriptionAlice and Bob are playing a game called "Climbing the Hill". The game board consists of cells arranged vertically, as the figure below, while the top cell indicates原创 2013-07-12 16:23:30 · 1159 阅读 · 0 评论 -
HDOJ1517[K(2~9)倍博弈][有规律存在]
题目:链接题目:Problem DescriptionStan and Ollie play the game of multiplication by multiplying an integer p by one of the numbers 2 to 9. Stan always starts with p = 1, does his multiplication, then O原创 2013-07-12 11:27:23 · 1549 阅读 · 0 评论 -
HDOJ2149[巴什博弈]输出走法
题目:题目链接简单来说题意:A,B两个人进行土地拍卖,拍卖过程中有一个限制,每人每次出价与前一次的差价范围要在1~n,求最后谁先报价到m若最后先出者获胜,输出先出者的可出方案题解:巴什博弈的扩展主要是输出方案,其实可行方案的话就是将对方推入必败态的取石子方案对于n大于m时,明显的先手可取m到n的任意数,一步获胜详细解释一下原创 2013-07-12 09:55:42 · 1016 阅读 · 0 评论 -
HDU/HDOJ1907 SG
题目:题目链接Problem DescriptionLittle John is playing very funny game with his younger brother. There is one big box filled with M&Ms of different colors. At first John has to eat several M&Ms of the原创 2013-07-18 20:57:13 · 837 阅读 · 0 评论 -
HDU/HDOJ 4203 找规律
题目:题目链接Problem DescriptionBeing a pirate means spending a lot of time at sea. Sometimes, when there is not much wind, days can pass by without any activity. To pass the time between chores, pi原创 2013-07-18 22:08:39 · 928 阅读 · 0 评论