参考代码:
class Solution {
public boolean canWinNim(int n) {
if(n%4==0){
return false;
}
return true;
}
}
大致思路:
先自己判断一下5、6、7、8是true还是false,会发现8那里是false,在自己推理的过程中就会发现,凡是碰到4的倍数,先手的一定会输,你拿N根对手就会拿4-N根,保证每回合共减4根,你永远是4根中的先手,最后一定会输。 相反,如果最开始不是4倍数,你可以拿掉刚好剩下4倍数根,让他永远对面4倍数。
具体实现:
只要是4的倍数就返回false,否则就返回true。