大概题意:A和B两个人一起玩游戏,游戏规则是有n个石头,A和B依次取石头,最后去完石头的那个人赢。其中,每人每次只能取1个或者2个或者3个石头,A是第一个取石头,现在有n个石头,如果A能够赢得话返回true,否则返回false。
实现的代码如下:
public static boolean canWinNim(int n) {
if(n%4==0)
return false;
return true;
}
解析:如果有4个石头,假设A取1个,B取3个,B赢;假设A取2个,B取2个,B赢;如果A取3个,B取1个,B赢;所以,当n的个数是4的倍数时,不管A怎么取,B都会赢。