题目链接:点击进入
题目
思路
巴什博奕(Bash Game):只有一堆 n 个物品,两个人轮流从这堆物品中取物,规定每次至少取一个,最多取 m 个。最后取光者得胜。
若给出的 n 是 ( m + 1 ) 的倍数,则先手必败,否则先手必胜
这个题要求最后要留一个,所以对剩下的 n-1 个进行判断
代码
#include<iostream>
#include<cstdio>
#include<cmath>
#include<cstring>
#include<algorithm>
using namespace std;
typedef long long ll;
const int maxn=1e7+10;
const double eps=1e-3;
int t,n,m,a[maxn],k;
string s;
int main()
{
ios::sync_with_stdio(false);
cin.tie(0);cout.tie(0);
cin>>t;
while(t--)
{
cin>>n>>k;
if((n-1)%(k+1)) cout<<"yo xi no forever!"<<endl;
else cout<<"ma la se mi no.1!"<<endl;
}
return 0;
}