LeetCode之 Nim Game

原创 2015年11月18日 22:57:43

原题如下:

You are playing the following Nim Game with your friend: There is a heap of stones on the table, each time one of you take turns to remove 1 to 3 stones. The one who removes the last stone will be the winner. You will take the first turn to remove the stones.

Both of you are very clever and have optimal strategies for the game. Write a function to determine whether you can win the game given the number of stones in the heap.

For example, if there are 4 stones in the heap, then you will never win the game: no matter 1, 2, or 3 stones you remove, the last stone will always be removed by your friend.

可以从小到大对n分析:

1<=n<=3:   win

4=n:     lose

5<=n<=7:  win

8=n:     lose

....

可以发现,对于先手者来说,如果 n%4值为0,肯定输,其他情况为赢。

所以代码为下:

class Solution {
public:
    bool canWinNim(int n) {
        return n%4 != 0;
    }
};
其实也可以用博弈论中的反向归纳法来分析,结果也是一样的。需要注意在这里我们有一个很强的假设就是理性的参与者和common knowledge,这是博弈论中很重要的概念。

leetcode submission/20161004(nim game)

讲真我个人不是很喜欢coding,因为对于算法这一类玩意儿总是记不住,平时靠感觉写东西的时候比较多,再加上前段时间忙着找房子,买房子(坐标北京),耽误了点儿时间,赶上国庆才抽空写点儿,不过还是希望养成...

LeetCode Nim Game

题目: You are playing the following Nim Game with your friend: There is a heap of stones on the t...

LeetCode笔记:292.Nim Game

问题: You are playing the following Nim Game with your friend: There is a heap of stones on the tabl...

LeetCode 292. Nim Game 题解(C++)

You are playing the following Nim Game with your friend: There is a heap of stones on the table, eac...

LeetCode从零单排之一分段——Nim Game(尼姆博弈)

原题(你们这里洋文好的人很多啊,我就不瞎翻译了): You are playing the following Nim Game with your friend: There is a h...
  • dt_yee
  • dt_yee
  • 2015年11月24日 12:35
  • 444

一次失败的刷题经历:[LeetCode]292之尼姆游戏(Nim Game)

最近闲来无事刷LeetCode,发现这道题的Accept Rate还是挺高的,尝试着做了一下,结果悲剧了,把过程写下来,希望能长点记性。该题的描述翻译成中文如下: 你正在和你的朋友玩尼姆游戏(Nim...

leetcode-292. Nim Game 算法设计,布尔类型的表示

题目: You are playing the following Nim Game with your friend: There is a heap of stones on the table,...

LeetCode Algorithms 292. Nim Game 题解

题目: You are playing the following Nim Game with your friend: There is a heap of stones on the tab...

Leetcode:292. Nim Game

Leetcode题解292.Nim Game-Easy题目

Leetcode - Nim Game

You are playing the following Nim Game with your friend: There is a heap of stones on the table, eac...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:LeetCode之 Nim Game
举报原因:
原因补充:

(最多只允许输入30个字)