★LeetCode(292)——Nim 游戏(JavaScript)
你和你的朋友,两个人一起玩 Nim 游戏:桌子上有一堆石头,每次你们轮流拿掉 1 - 3 块石头。 拿掉最后一块石头的人就是获胜者。你作为先手。
你们是聪明人,每一步都是最优解。 编写一个函数,来判断你是否可以在给定石头数量的情况下赢得游戏。
示例:
输入: 4
输出: false
解释: 如果堆中有 4 块石头,那么你永远不会赢得比赛;
因为无论你拿走 1 块、2 块 还是 3 块石头,最后一块石头总是会被你的朋友拿走。
/*** @param {number} n* @return {boolean}*/
var canWinNim = function(n) {};
个人解法
思路:你先手,如果你拿第一次之后剩下的石头是4的倍数的话,那你就赢定了,你只要一直保持4的倍数就可以了。比如9,你一开始拿掉1个,剩8个,然后无论对手那1-3的哪几个,你只要拿掉石头后剩下4块就可以了。
var canWinNim = function(n) {return n % 4 !== 0;};
★LeetCode(292)——Nim 游戏(JavaScript)相关推荐
- Java实现 LeetCode 292 Nim游戏
292. Nim 游戏 你和你的朋友,两个人一起玩 Nim 游戏:桌子上有一堆石头,每次你们轮流拿掉 1 - 3 块石头. 拿掉最后一块石头的人就是获胜者.你作为先手. 你们是聪明人,每一步都是最优解 ...
- Leetcode 292. Nim 游戏 解题思路及C++实现
方法一:规律 解题思路: n从1开始增加,可以发现,当 n 是 4 的倍数的时候,就是false. class Solution { public:bool canWinNim(int n) {ret ...
- LeetCode 292 Nim Game
LeetCode 292 Nim Game https://leetcode.com/problems/nim-game/ 当能被4整除时,才会输. bool canWinNim(int n) {re ...
- LeetCode题目笔记——292. Nim 游戏 (脑筋急转弯C++/Python)
文章目录 题目描述 题目难度--简单 方法一:脑筋急转弯 代码/C++/Python 总结 题目描述 你和你的朋友,两个人一起玩 Nim 游戏: 桌子上有一堆石头. 你们轮流进行自己的回合, 你作为先 ...
- leetcode刷题:292. Nim 游戏(Java)
题目描述 你和你的朋友,两个人一起玩 Nim 游戏:桌子上有一堆石头,每次你们轮流拿掉 1 - 3 块石头. 拿掉最后一块石头的人就是获胜者.你作为先手. 你们是聪明人,每一步都是最优解. 编写一个函 ...
- 力扣(LeetCode)292. Nim游戏 巴什博奕
你和你的朋友,两个人一起玩 Nim游戏:桌子上有一堆石头,每次你们轮流拿掉 1 - 3 块石头. 拿掉最后一块石头的人就是获胜者.你作为先手. 你们是聪明人,每一步都是最优解. 编写一个函数,来判断你 ...
- LeetCode 292 Nim Game(Nim游戏)
翻译 你正在和你的朋友们玩下面这个Nim游戏:桌子上有一堆石头,每次你从中去掉1-3个.谁消除掉最后一个石头即为赢家.你在取出石头的第一轮.你们中的每一个人都有着聪明的头脑和绝佳的策略.写一个函数来确 ...
- LeetCode 292. Nim Game
292. Nim Game 尼姆游戏 You are playing the following Nim Game with your friend: 您正在和您的朋友玩以下NIM游戏: There ...
- 292. Nim 游戏(简单题)
题目描述: 你和你的朋友,两个人一起玩 Nim 游戏:桌子上有一堆石头,每次你们轮流拿掉 1 - 3 块石头. 拿掉最后一块石头的人就是获胜者.你作为先手. 你们是聪明人,每一步都是最优解. 编写一个 ...
- 文巾解题 292. Nim 游戏
1 题目描述 2 解题思路 这其实是一个脑筋急转弯一样的题目.先给出结论吧:如果堆中石头的数量 n 不能被 4 整除,那么你总是可以赢得 Nim 游戏的胜利. 下面是推导部分: 让我们考虑一些小例子. ...
最新文章
- R语言报错:Error in scan(file = file, what = what, sep = sep, quote = quote, dec = dec, : n行没有x元素
- FAR,FRR,EER
- nginx的脚本引擎(一)
- java大数输出一位小数_java大数练习 大明A+B(大数小数的高精度)
- Debug gradle task
- 26. 复杂链表的复制
- 引用了System.Configuration命名空间,却找不到ConfigurationManager类
- Leetcode 207. 课程表(值得一刷的宽搜)
- 转载 Linux新人科普
- java基础企业级入门视频教程-周江超-专题视频课程
- C++加载csb文件
- OpenBSD5.2安装图形界面
- UE4开发五:人物模型和摄像机
- Markdown 书写规范
- MTK虚拟sensor梳理
- 2022年中国汽车事件数据记录器(EDR)市场现状研究分析与发展前景预测报告
- 信度不达标的处理方式
- 《javascript基础》学习笔记 一
- Fabric基础配置文件解析(一)
- JSP+Servlet+C3P0+Mysql实现的网上蛋糕店
热门文章
- 求数组第二大元素 和 字符串拷贝的实现
- Asp.Net Core基于JWT认证的数据接口网关Demo
- 第四次作业:个人项目-小学四则运算 “软件”之初版
- 玩转Go语言之数据类型转换
- Linux之bash脚本编程---if补充和for循环
- MyBatis教程目录
- IT项目管理-----给年轻工程师的十大忠告
- cocos2d-x 如何使用Visual Studio 2010和xcode 4混合编写手机游戏
- 浏览器设置主页 注册表_关于浏览器首页被篡改这件事
- flutter图标按钮_Flutter 中的常见的按钮组件 以及自 定义按钮组件