这个博弈叫巴什博弈,比较简单易懂。
有n个石子,轮流取,每次取1~m个,无子可取的人判负。
给对方留m+1个子,遍可取胜,当子数是m+1的倍数的时候,对方取多少,自己只要让其保持m+1的倍数就好,因此当n%(m+1)==0的时候,先手必败。
如果把规则稍微改一下,最后取完的人判负,那么我们就要努力给对手只留一个子,也就是要给对手留m+1+1个子,因此n%(m+1)==1的时候,先手必败。
#include <bits/stdc++.h>
using namespace std;
int main()
{
int C,n,m;
cin>>C;
for(int i=0;i<C;i++){
cin>>n>>m;
if(n%(m+1)==0)cout<<"second"<<endl;
else cout<<"first"<<endl;
}
return 0;
}