不管怎样走,都可以赢才返回true?所以只要找到一种会输的就是false? i am not sure....oh,,不是这样的
看了solution,其实只要第二个人剩下的数是4的倍数,那么第一个人肯定会输,因为他至多remove3个,而且观察发现 1 , 2 , 3 都是 % 4的余数,所以我们只要判断 n 是否是 4 的倍数,如果是那么第一个人一定会输得(假装自己特别明白,其实并不是特别特别透彻的明白==嘤嘤嘤了)
class Solution {
public:
bool canWinNim(int n) {
return (n % 4) == 0 ? false : true;
}
};