欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

2018HDU多校2-1004-Game(hdu 6312)-博弈论,思维

程序员文章站 2022-03-13 19:28:41
...

2018HDU多校2-1004-Game(hdu 6312)-博弈论,思维

题意:

A和B玩游戏,A先手,每次从1~n中选一个数,并去掉该数的所有因子,最后不能操作的人输

思路:

玄学题,想了好久没想到。。。
因为1是任何数的因子,所以只要选择其他数,必将1删去
考虑在2~n的数列中取数
若先手胜利:无需做任何改变,因为1是任何数的因子,一定会被删去,故不影响比赛
若先手失败:则A可以第一次取1,这样就变成B先手在2~n中取数,因为先手失败,所以B会失败,A则胜利

代码:

#include<bits/stdc++.h>
using namespace std;
int main()
{
    int n;
    while(cin>>n)
        cout<<"Yes"<<endl;
    return 0;
}
相关标签: ACM