博弈论
蒟蒻的ACMer
2014界大学新生
展开
-
HDU 2188 悼念512汶川大地震遇难同胞——选拔志愿者 巴什博奕
悼念512汶川大地震遇难同胞——选拔志愿者Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 7808 Accepted Submission(s): 4966Problem Description对于四川同胞遭受原创 2016-04-07 13:23:42 · 547 阅读 · 0 评论 -
poj 2505 A multiplication game
题意:规定一个操作,每次能把原来的数乘以2~9中的任意一个数。2个人轮流进行操作。给定一个数谁先操作得到大于等于该数谁赢的这场比赛。分析: 对于先手第一次面对的是1所以2~9是先手必胜的对于后手第一次面对是2~9所以他能得到的最小的数是18所以10~18是后手比胜类推10~18*2~9 19~162ACcode:#include using namespace std原创 2016-08-13 14:22:12 · 301 阅读 · 0 评论 -
poj 2975 NIM
题意:在nim游戏中求先手能够取胜的方案数 分析:我们知道一般求nim游戏是否能胜是把所有堆石头异或判断异或是否为0,如果为0必败,那么对于本题就是要求有几堆石头可以拿走一定的石头使得剩下的异或和为0因为一个数异或自己为0 那么我们可以利用这点判断有几种方案ACcode:#include#include#define maxn 1005using namespace原创 2016-08-13 13:02:45 · 380 阅读 · 0 评论 -
HDU 1848 Fibonacci again and again sg函数
nim博弈变形每次能拿的石子数都是斐波那契数sg函数模板//f[N]:可改变当前状态的方式,N为方式的种类,f[N]要在getSG之前先预处理//SG[]:0~n的SG函数值//S[]:为x后继状态的集合int f[N],SG[MAXN],S[MAXN];void getSG(int n){ int i,j; memset(SG,0,sizeof(SG));原创 2016-08-09 10:39:30 · 302 阅读 · 0 评论 -
HDU 5795 A Simple Nim 打表sg
sg[0]=0当x=8k+7时sg[x]=8k+8,当x=8k+8时sg[x]=8k+7,其余时候sg[x]=x;(k>=0)打表找规律可得,数学归纳法可证。ACcode:#include using namespace std;int sg[105];int getSG(int x){ if (sg[x] != -1) return原创 2016-08-06 13:57:45 · 321 阅读 · 0 评论 -
sdut 3253 Game! 博弈
题意:一个1~n的环每个人每次可以拿一个石头或者拿连续2个的石头(即第i个和第i+1个)最后一个取完的就是赢家问先手是否能胜分析:当n为1和2的时候先手必胜,当n为3的时候为必败当n为4的时候无论怎么取都将进入必胜态即n为4先手必败,手推几个情况后断定n大于2的时候先手必败ACcode:#pragma warning(disable:4786)//使命名长度不受限制#pr原创 2016-05-18 16:56:59 · 467 阅读 · 0 评论 -
HDU S NIM 求sg函数
S-NimTime Limit: 5000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 6014 Accepted Submission(s): 2568Problem DescriptionArthur and his sister Ca原创 2016-04-08 13:03:59 · 506 阅读 · 0 评论 -
hdu 1847 Good Luck in CET-4 Everybody! 博弈
Good Luck in CET-4 Everybody!Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 7586 Accepted Submission(s): 4883Problem Description原创 2016-04-07 19:54:01 · 555 阅读 · 0 评论 -
POJ 1067 取石子游戏 威佐夫博奕 Wythoff Game
取石子游戏Time Limit: 1000MS Memory Limit: 10000KTotal Submissions: 38852 Accepted: 13002Description有两堆石子,数量任意,可以不同。游戏开始由两个人轮流取石子。游戏规定,每次有两种不同的取法,一是可以在任意的一堆中取走任意多的石子;二是可原创 2016-04-07 19:07:47 · 610 阅读 · 0 评论 -
HDU 2149 Public Sale 巴什博奕
Public SaleTime Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 6499 Accepted Submission(s): 3821Problem Description虽然不想,但是现实总归是现实,Lel原创 2016-04-07 13:48:59 · 461 阅读 · 0 评论 -
sdut 2161 Simple Game 博弈
题意:N堆石子,每堆有ai个,轮流取,每次最多从3堆石子中取(可以取不同)。问先手是否能必胜分析:最普通的尼姆游戏是从1堆中取,本题是从3堆中取,推广成k堆呢?对于尼姆博弈我们的做法是把所有的数异或最后判断最后值是否大于0对于本题的必败态有:1 1 1 1 2 2 2 2 3 3 3 3 1 2 3 3 3 1 3 4 4 4原创 2017-05-02 18:22:33 · 420 阅读 · 0 评论