你和你的朋友,两个人一起玩 Nim 游戏:桌子上有一堆石头,每次你们轮流拿掉 1 - 3 块石头。 拿掉最后一块石头的人就是获胜者。你作为先手。

你们是聪明人,每一步都是最优解。 编写一个函数,来判断你是否可以在给定石头数量的情况下赢得游戏。

示例:

输入: 4
输出: false
解释: 如果堆中有 4 块石头,那么你永远不会赢得比赛;因为无论你拿走 1 块、2 块 还是 3 块石头,最后一块石头总是会被你的朋友拿走。

思路:这个数只要不能被4整除,先手的人就一定能赢。

必胜战术:

例如总共有9个石头

先手A先拿9%4=1,余数1

后手B拿x={1,2,3}

先手A拿4-x

后手B拿x={1,2,2}

先手A拿4-x, 先手赢。

所以只要返回这个数能不能被4整除就好。

bool canWinNim(int n) {return n % 4 != 0;
}

Leetcode Nim 游戏相关推荐

  1. LeetCode Nim游戏 题解

    题述: 你和你的朋友,两个人一起玩 Nim 游戏: 桌子上有一堆石头. 你们轮流进行自己的回合, 你作为先手 . 每一回合,轮到的人拿掉 1 - 3 块石头. 拿掉最后一块石头的人就是获胜者. 假设你 ...

  2. LeetCode实战:Nim 游戏

    背景 为什么你要加入一个技术团队? 如何加入 LSGO 软件技术团队? 我是如何组织"算法刻意练习活动"的? 为什么要求团队的学生们写技术Blog 题目英文 You are pla ...

  3. LeetCode题目笔记——292. Nim 游戏 (脑筋急转弯C++/Python)

    文章目录 题目描述 题目难度--简单 方法一:脑筋急转弯 代码/C++/Python 总结 题目描述 你和你的朋友,两个人一起玩 Nim 游戏: 桌子上有一堆石头. 你们轮流进行自己的回合, 你作为先 ...

  4. leetcode刷题:292. Nim 游戏(Java)

    题目描述 你和你的朋友,两个人一起玩 Nim 游戏:桌子上有一堆石头,每次你们轮流拿掉 1 - 3 块石头. 拿掉最后一块石头的人就是获胜者.你作为先手. 你们是聪明人,每一步都是最优解. 编写一个函 ...

  5. LeetCode:292. Nim Game Nim 游戏(C语言)

    题目描述: 你和你的朋友,两个人一起玩 Nim 游戏:桌子上有一堆石头,每次你们轮流拿掉 1 - 3 块石头. 拿掉最后一块石头的人就是获胜者.你作为先手. 你们是聪明人,每一步都是最优解. 编写一个 ...

  6. 【LeetCode击败99%+】Nim 游戏

    题目 你和你的朋友,两个人一起玩 Nim 游戏: 桌子上有一堆石头. 你们轮流进行自己的回合,你作为先手. 每一回合,轮到的人拿掉 1 - 3 块石头. 拿掉最后一块石头的人就是获胜者. 假设你们每一 ...

  7. 力扣(LeetCode)292. Nim游戏 巴什博奕

    你和你的朋友,两个人一起玩 Nim游戏:桌子上有一堆石头,每次你们轮流拿掉 1 - 3 块石头. 拿掉最后一块石头的人就是获胜者.你作为先手. 你们是聪明人,每一步都是最优解. 编写一个函数,来判断你 ...

  8. ★LeetCode(292)——Nim 游戏(JavaScript)

    你和你的朋友,两个人一起玩 Nim 游戏:桌子上有一堆石头,每次你们轮流拿掉 1 - 3 块石头. 拿掉最后一块石头的人就是获胜者.你作为先手. 你们是聪明人,每一步都是最优解. 编写一个函数,来判断 ...

  9. Java实现 LeetCode 292 Nim游戏

    292. Nim 游戏 你和你的朋友,两个人一起玩 Nim 游戏:桌子上有一堆石头,每次你们轮流拿掉 1 - 3 块石头. 拿掉最后一块石头的人就是获胜者.你作为先手. 你们是聪明人,每一步都是最优解 ...

最新文章

  1. 38 JavaScript中的this指向问题
  2. python中api是指什么_python中API接口是什么
  3. 百度陆奇最新内部演讲:人工智能时代,给工程师的5个建议
  4. 原生ajax封装,数据初始化,
  5. Python 进阶_模块 amp; 包
  6. 服务器管理安全(上)
  7. windows tomcat 升级openssl_Linunx开发环境配置——Tomcat
  8. python c 选择_C和Python,小白应该选择学习哪门语言?
  9. Windows消息拦截技术的应用
  10. 12.2 asmca fails with 'ORA-00845'
  11. 大规模Web服务开发技术
  12. 以太坊 solidity 教程
  13. 高斯模型matlab程序代码,我找到的高斯混合模型的代码
  14. 韩语在线翻译图片识别_Text Scanner for Mac(ocr文字识别工具)
  15. ILSVRC竞赛详细介绍(ImageNet Large Scale Visual Recognition Challenge)
  16. Android 关于微信分享提示签名不对的问题
  17. 文明与征服新套路,北条点火队
  18. Partial Adversarial Domain Adaptation学习笔记
  19. c语言社团管理系统实验报告,C语言课程设计大学社团管理系统
  20. 布袋除尘器过滤风速多少_布袋除尘器-布袋除尘器过滤风速是指的什么?-宏大除尘设备...

热门文章

  1. PC电脑桌面端UI设计规范
  2. 【密码效验最强正则表达式】
  3. oracle数据库学习总结
  4. python爬虫中pyc文件的生成和使用
  5. BMS | 动力电池应用领域技术重点整理
  6. 头歌:C++ 面向对象 - 构造函数与析构函数
  7. 32. 从上到下打印二叉树 Ⅰ
  8. tp6token进行合法性验证(中间件)
  9. linux中的execlp函数的作用,我不明白execlp()在Linux中的工作原理
  10. python自学第8天字典_孤荷凌寒自学python第十一天初识Python的字典类