威佐夫博奕模板

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

猜你喜欢

转载自blog.csdn.net/mch2869253130/article/details/82527588
今日推荐