[leetcode] Nim Gam
来源:互联网 发布:玛雅新域名 编辑:程序博客网 时间:2024/06/07 21:59
Nim Gam
这是道有意思的题目:桌子上有一些石头,两个人轮流拿走石头,每人每次只能拿1、2或3块石头,最后拿完石头的人获胜。而且,双方都以最优的方式拿石头。问,当石头数目给定,而且你先拿石头,判断你是否会赢。
例如,当有4块石头,你先拿,那么无论你拿1、2或3块,你一定会输。
开始觉得这应该是个回溯问题吧,一会就发现,我把问题想复杂了。。
如果我先手,而且我会赢,那么石头的个数应该满足什么呢?
* 倒数第二次我拿过之前,一定剩4块(如果剩5、6、7块,我一定会输,如果剩8块,我也会赢。)
* 也就是说只要不是4的倍数,我就可以赢喽?
class Solution {public: bool canWinNim(int n) { if(n%4 == 0) return false; return true; }};
这么简单。。
0 0
- [leetcode] Nim Gam
- Nim Game leetcode 292
- leetcode Nim Game
- [LeetCode 292] Nim Game
- leetcode | Nim Game
- leetcode 292---NIM GAME
- [leetcode] 292.Nim Game
- LeetCode:Nim Game
- leetcode-292-Nim Game
- LeetCode-Nim Game
- *LeetCode-Nim Game
- LeetCode Nim Game
- LeetCode之Nim Game
- 【Leetcode】Nim Game
- LeetCode 292----Nim Game
- LeetCode:Nim Game
- LeetCode -- Nim Game
- LeetCode--Nim Game
- js 弹出子页面与关闭子页面刷新父页面的问题
- http字符编码的解释说明
- Unity3d 小技巧
- java并发的处理方式
- 设计模式——命令模式
- [leetcode] Nim Gam
- lucene学习六:lucene全文检索与数据库查询的比较
- 状态选择器
- Caffe代码导读(1):Protobuf例子
- JS刷新当前页面的几种方法总结
- HF集成AirKiss、微信局域网控制
- acm之动态规划题目3
- jenkins需要依赖其它插入
- accessibilityservice 自动安装 取消删除安装包