LeetCode (262):Nim Game
来源:互联网 发布:杭州淘宝城地址在哪里 编辑:程序博客网 时间:2024/05/22 16:01
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.
Hint:
- If there are 5 stones in the heap, could you figure out a way to remove the stones such that you will always be the winner?
思路:
当heap中有1、2、3个stones时一定获胜,当有4个stones时一定会输。那么当有5个stones的时候,我们可以先拿出来一个stones,此时相当于我们面对4个stones时的情形。
依次可以类推出,当heap中恰好有4N(N=1,2,3......)个stones时,我方一定会输。
java代码:
public class Solution { public boolean canWinNim(int n) { if(n%4==0) return false; else return true; }}
阅读全文
0 0
- LeetCode (262):Nim Game
- 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
- LeetCode (65):Same tree
- 在centos7测试arm-Linux-gcc交叉编译器
- LeetCode (226):Invert Binary Tree 递归实现
- LeetCode (236):Lowest Common Ancestor of a Binary Search Tree
- Unity3d之截图方法
- LeetCode (262):Nim Game
- LeetCode (238):Product of Array Except Self
- LeetCode(144):Binary Tree Preorder Traversal
- android获取编辑框的最大长度
- Leetcode(93): Restore IP Addresses
- Java使用BigDecimal解决精确计算的问题
- Socket通信原理
- 回顾:计算机网络之传输协议
- 使用Vue-cli快速搭建项目