1、 本游戏是一个二人游戏;
2、 有一堆石子一共有n个;
3、 两人轮流进行;
4、 每走一步可以取走1…m个石子;
2、 有一堆石子一共有n个;
3、 两人轮流进行;
4、 每走一步可以取走1…m个石子;
5、 最先取光石子的一方为胜;
典型的巴什博弈
http://blog.csdn.net/masked__dance/article/details/40401827
不过,总是得有个前提,就是他们都非常聪明,而且使用的都是最优策略。
#include <iostream>
#include <stdio.h>
using namespace std;
int main()
{
int T;
scanf("%d",&T);
while(T--){
int num,maxnum,sum;
scanf("%d%d",&num,&maxnum);///num表示总的石子数,maxnum表示一次最多能取得的石子数
if(num<=maxnum)
cout<<"first"<<endl;
else if(num%(maxnum+1)!=0)
cout<<"first"<<endl;
else
cout<<"second"<<endl;
}
return 0;
}