1. 程式人生 > >博弈論知識點總結(巴什博奕 威佐夫博弈 尼姆博弈 SG()函式介紹)

博弈論知識點總結(巴什博奕 威佐夫博弈 尼姆博弈 SG()函式介紹)

總結

真心感謝博主,終於知道為什麼尼姆博弈用異或來解決。

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;
			}
		}
	}
}