🗒️877. 石子游戏
2024-12-21
| 2024-12-21
0  |  阅读时长 0 分钟
type
status
date
slug
summary
tags
category
icon
password
创建时间
Dec 21, 2024 12:06 PM
Alice 和 Bob 用几堆石子在做游戏。一共有偶数堆石子,排成一行;每堆都有  整数颗石子,数目为 piles[i] 。
游戏以谁手中的石子最多来决出胜负。石子的 总数 是 奇数 ,所以没有平局。
Alice 和 Bob 轮流进行,Alice 先开始 。 每回合,玩家从行的 开始 或 结束 处取走整堆石头。 这种情况一直持续到没有更多的石子堆为止,此时手中 石子最多 的玩家 获胜 。
假设 Alice 和 Bob 都发挥出最佳水平,当 Alice 赢得比赛时返回 true ,当 Bob 赢得比赛时返回 false 。

博弈论

将数组根据奇偶分成两组,分别计算两组的大小,判断谁更大。第一组更大,先手的每一次选择在第一组的元素,反之依然,则先手的胜率是百分之百。为什么可行呢?例如下图,当先手选择完第一组(蓝色),后手不管怎么选都是第二组(红色)的。
notion image

📎 参考

 
  • 【题单】数学算法
  • 1510. 石子游戏 IV2038. 如果相邻两个颜色均相同则删除当前颜色
    Loading...