博弈论知识点总结(巴什博奕 威佐夫博弈 尼姆博弈 SG()函数介绍)

版权声明:低调地前行,越努力越幸运! https://blog.csdn.net/SSYITwin/article/details/83089726

转载自:总结

真心感谢博主,终于知道为什么尼姆博弈用异或来解决。

SG函数模板:

void init()//根据题目要求进行修改 
{
	a[0]=1;
	for(int i=1;i<=32;i++)
	   a[i]=a[i-1]*2;
}
void SG()
{

	for(int i=1;i<=1000;i++)
	{	
	    memset(vis,0,sizeof(vis));
		for(int j=0;a[j]<=i;j++)
		{
			vis[sg[i-a[j]]]=1;
		}
		for(int j=0;j<1000;j++)//寻找不属于mex{}集合 ,且最小的 
		{
			if(vis[j]==0)
			{
				sg[i]=j;
				break;
			}
		}
	}
}

猜你喜欢

转载自blog.csdn.net/SSYITwin/article/details/83089726