https://www.cnblogs.com/chenhuan001/p/5735165.html
//威佐夫博奕:有两堆各若干个物品,两个人轮流从某一堆或同时从两堆中取同样多的物品,规定每次至少取一个,多者不限,最后取光者得胜。
//输入:两堆大小
//返回:0表示必败,1表示必胜
bool Wythoff(int n,int m)
{
if(n<m) swap(n,m);
int k=n-m;
n=(int)(k*(1+sqrt(5))/2.0);
if(n==m)
return 0;
else
return 1;
}
威佐夫博奕模板
最新推荐文章于 2020-08-24 22:27:21 发布