文章目录

  • 1. 题目
  • 2. 思路
    • (1) 博弈论
  • 3. 代码

1. 题目


2. 思路

(1) 博弈论

  • 只需将石子分成三类即可,即除3余0、1、2的石子,每次累加的和也都对3取余。
  • 若和为0,则游戏直接结束,因此,在游戏结束前,和要么为1,要么为2。
  • 游戏结束前,当取出与和相等的石子时,和会在1和2之间互换;当取出余0的石子时,等于交换了一次先后手的顺序;当取出与和不等的石子时,则游戏结束。
  • 若余0的石子个数是偶数,则先后手顺序不变,而A必然要先取一个1或者2且取完还有剩的才能保证自己是必胜的。
  • 若余0的石子个数是奇数,则相当于B先手,只有当1和2的个数差大于2才能保证A必胜。

3. 代码

public class Test {public static void main(String[] args) {}
}class Solution {public boolean stoneGameIX(int[] stones) {int[] count = new int[3];for (int stone : stones) {count[stone % 3]++;}if ((count[0] & 1) == 0) {return count[1] >= 1 && count[2] >= 1;}return Math.abs(count[1] - count[2]) > 2;}
}

2022.01.20 - 214.石子游戏 IX相关推荐

  1. 2029. 石子游戏 IX

    2029. 石子游戏 IX Alice 和 Bob 再次设计了一款新的石子游戏.现有一行 n 个石子,每个石子都有一个关联的数字表示它的价值.给你一个整数数组 stones ,其中 stones[i] ...

  2. 【数据结构与算法】之深入解析“石子游戏IX”的求解思路与算法示例

    一.题目描述 Alice 和 Bob 再次设计了一款新的石子游戏,现有一行 n 个石子,每个石子都有一个关联的数字表示它的价值,给你一个整数数组 stones ,其中 stones[i] 是第 i 个 ...

  3. 2029. 石子游戏 IX(C++解法与思路)

    题目: Alice 和 Bob 再次设计了一款新的石子游戏.现有一行 n 个石子,每个石子都有一个关联的数字表示它的价值.给你一个整数数组 stones ,其中 stones[i] 是第 i 个石子的 ...

  4. 【博弈论】leetcode2029. 石子游戏 IX

    题目: Alice 和 Bob 再次设计了一款新的石子游戏.现有一行 n 个石子,每个石子都有一个关联的数字表示它的价值.给你一个整数数组 stones ,其中 stones[i] 是第 i 个石子的 ...

  5. leetcode每日一题2029. 石子游戏 IX 博弈相对论 不战而屈人之兵

  6. LeetCode2029. 石子游戏 IX

    相关信息: LeetCode链接: https://leetcode-cn.com/problems/stone-game-ix/ 代码: //作者:LeetCode-Solution public ...

  7. 2022.01.21 - 215.跳跃游戏 IV

    文章目录 1. 题目 2. 思路 (1) BFS 3. 代码 1. 题目 2. 思路 (1) BFS 首先统计每个值出现的所有位置,然后从头开始广度优先搜索. 由于从头开始的步数必然是最小的,因此,先 ...

  8. Python每日一练(20230510) 石子游戏 VII\VIII\IX

    目录 1. 石子游戏 Stone Game VII 2. 石子游戏 Stone Game VIII 3. 石子游戏 Stone Game IX

  9. 取石子游戏详解NIM

    取石子游戏详解NIM 分类: 编程之美2014-09-13 09:38 478人阅读 评论(3) 收藏 举报 编程之美 目录(?)[+] http://blog.csdn.net/pipisorry/ ...

最新文章

  1. 一文读懂比特币现金(BCH)
  2. python interpreter 中没有torch_PyTorch扩展自定义PyThon/C++(CUDA)算子的若干方法总结
  3. 纯js实现人脸识别眨眨眼张张嘴案例——alive_face.js
  4. ES6 里面的 class
  5. java实现对象转换为map、xml字符串转化为map、map转化为xml字符串
  6. Spark RDD、DataFrame和DataSet的区别
  7. php 7 环境安装
  8. latex 图片_【包学包会】【LaTeX篇】TeXLive+VsCode+TexStudio
  9. 学计算机小学教师资格证,教师资格证我现在在一间小学教计算机,但现在 – 手机爱问...
  10. Oracle EBS 寄销/VMI(1)--基础设置
  11. Debian 10安装教程
  12. 年仅28岁的程序员宣布从字节跳动退休,他是如何实现财务自由的?
  13. Docker版NextCloud文件手动扫描同步 定时扫描
  14. linux系统下安装pip3,linux下安装python3和对应的pip环境教程详解
  15. 铠甲进化!套上它,毛绒玩具也会动起来
  16. Java设计模式--在项目中的应用
  17. [编程学习][算法学习][算法问题]L形砖拼缺一个口的国际象棋盘
  18. revit 转换ifc_Revit导出ifc步骤有哪些?Revit 模型导出 .exe 脱机文件的方法步骤
  19. 怎样做一个优秀的(懒惰的)系统管理员
  20. js 设置当前时间的后20分钟、后一小时、前一天等等相对时间

热门文章

  1. [Hello World!]关于为什么我要写博客
  2. 任意输入英文的星期几,在查找星期表后输出其对应的数字(C语言)
  3. Google Breakpad 在 windows下捕获程序崩溃报告
  4. 平面设计表现手法常识
  5. 湖北省商务厅领导会见我会考察团一行
  6. python安装教程(mac版)-python安装步骤
  7. [CF46D]Parking Lot
  8. python char数组_Python char数组声明
  9. 常见关键字总结:static,final,this,super
  10. 泛化能力 归一化处理