Skip to content

Commit 10ee25d

Browse files
committed
✨update: Modify 2029
1 parent aa4dedb commit 10ee25d

File tree

1 file changed

+2
-2
lines changed

1 file changed

+2
-2
lines changed

LeetCode/2021-2030/2029. 石子游戏 IX(中等).md

+2-2
Original file line numberDiff line numberDiff line change
@@ -87,7 +87,7 @@ Alice 输掉游戏,因为已移除石子值总和(15)可以被 3 整除,
8787

8888
* 举个 🌰,当 $s = 1$ 和 $s = 2$ 的石子数量相等,虽然有 $s = 0$ 的石子,`A` 先手,但是 `A` 的首个回合必然不能选 $s = 0$,否则马上失败结束,因此 `A` 只能选 $s = 1$ 或 $s = 2$,此时 `B`直接选择 $s = 0$ 的石子,交由给 `A` 的局面 $x$ 没有发生改变,`A` 只能选择与首个回合相同的 $s$ 游戏才能继续,因此局面会变为「`B` 先手、$s = 1$ 和 $s = 2$ 的石子数量差为 $2$」,游戏继续,最终 `A` 会先遇到「只能凑成 $3$ 的倍数」的局面,即 **`B` 必胜**
8989

90-
* 两者数量差不超过 $2$:此时无论 `A` 选择数量较少或较多的 `s``B` 都在第二回合马上使用 $s = 0$ 的石子进行换手,`A` 只能继续选与第一回合相同类型的的石子,游戏才能进行,最终 `A` 会先遇到「只能凑成 $3$ 的倍数」或「石子被取完」的局面,即 **`B` 必胜**
90+
* 两者数量不等,但数量差不超过 $2$:此时无论 `A` 选择数量较少或较多的 `s``B` 都在第二回合马上使用 $s = 0$ 的石子进行换手,`A` 只能继续选与第一回合相同类型的的石子,游戏才能进行,最终 `A` 会先遇到「只能凑成 $3$ 的倍数」或「石子被取完」的局面,即 **`B` 必胜**
9191

9292
* **两者数量差超过 $2$** :此时即使 `A` 只要确保第一次选择数量较多的 $s$,不管 `B` 是否使用「优先使用 $s = 0$」的石子,`A` 都有足够次数数量多 $s$ 来抵消换手(或是在 `B` 放弃使用 $s = 0$ 之后马上使用),最终都是 `B` 最先遇到「只能凑成 $3$ 的倍数」的局面,即 **`A` 获胜**
9393

@@ -97,7 +97,7 @@ class Solution {
9797
public boolean stoneGameIX(int[] stones) {
9898
int[] cnts = new int[3];
9999
for (int i : stones) cnts[i % 3]++;
100-
return cnts[0] % 2 == 0 ? !(cnts[1] == 0 || cnts[2] == 0) : !(Math.abs(cnts[1] - cnts[2]) <= 2);
100+
return cnts[0] % 2 == 0 ? !(cnts[1] == 0 || cnts[2] == 0) : Math.abs(cnts[1] - cnts[2]) > 2;
101101
}
102102
}
103103
```

0 commit comments

Comments
 (0)