mirror of
https://gitee.com/coder-xiaomo/leetcode-problemset
synced 2025-01-10 18:48:13 +08:00
53 lines
3.2 KiB
HTML
53 lines
3.2 KiB
HTML
<p>给你一个下标从 <strong>0</strong> 开始的二维数组 <code>grid</code> ,数组大小为 <code>2 x n</code> ,其中 <code>grid[r][c]</code> 表示矩阵中 <code>(r, c)</code> 位置上的点数。现在有两个机器人正在矩阵上参与一场游戏。</p>
|
||
|
||
<p>两个机器人初始位置都是 <code>(0, 0)</code> ,目标位置是 <code>(1, n-1)</code> 。每个机器人只会 <strong>向右</strong> (<code>(r, c)</code> 到 <code>(r, c + 1)</code>) 或 <strong>向下 </strong>(<code>(r, c)</code> 到 <code>(r + 1, c)</code>) 。</p>
|
||
|
||
<p>游戏开始,<strong>第一个</strong> 机器人从 <code>(0, 0)</code> 移动到 <code>(1, n-1)</code> ,并收集路径上单元格的全部点数。对于路径上所有单元格 <code>(r, c)</code> ,途经后 <code>grid[r][c]</code> 会重置为 <code>0</code> 。然后,<strong>第二个</strong> 机器人从 <code>(0, 0)</code> 移动到 <code>(1, n-1)</code> ,同样收集路径上单元的全部点数。注意,它们的路径可能会存在相交的部分。</p>
|
||
|
||
<p><strong>第一个</strong> 机器人想要打击竞争对手,使 <strong>第二个</strong> 机器人收集到的点数 <strong>最小化</strong> 。与此相对,<strong>第二个</strong> 机器人想要 <strong>最大化</strong> 自己收集到的点数。两个机器人都发挥出自己的 <strong>最佳水平</strong> 的前提下,返回 <strong>第二个</strong> 机器人收集到的 <strong>点数</strong> <em>。</em></p>
|
||
|
||
<p> </p>
|
||
|
||
<p><strong>示例 1:</strong></p>
|
||
|
||
<p><img alt="" src="https://assets.leetcode.com/uploads/2021/09/08/a1.png" style="width: 388px; height: 103px;" /></p>
|
||
|
||
<pre>
|
||
<strong>输入:</strong>grid = [[2,5,4],[1,5,1]]
|
||
<strong>输出:</strong>4
|
||
<strong>解释:</strong>第一个机器人的最佳路径如红色所示,第二个机器人的最佳路径如蓝色所示。
|
||
第一个机器人访问过的单元格将会重置为 0 。
|
||
第二个机器人将会收集到 0 + 0 + 4 + 0 = 4 个点。
|
||
</pre>
|
||
|
||
<p><strong>示例 2:</strong></p>
|
||
<img alt="" src="https://assets.leetcode.com/uploads/2021/09/08/a2.png" style="width: 384px; height: 105px;" />
|
||
<pre>
|
||
<strong>输入:</strong>grid = [[3,3,1],[8,5,2]]
|
||
<strong>输出:</strong>4
|
||
<strong>解释:</strong>第一个机器人的最佳路径如红色所示,第二个机器人的最佳路径如蓝色所示。
|
||
第一个机器人访问过的单元格将会重置为 0 。
|
||
第二个机器人将会收集到 0 + 3 + 1 + 0 = 4 个点。
|
||
</pre>
|
||
|
||
<p><strong>示例 3:</strong></p>
|
||
<img alt="" src="https://assets.leetcode.com/uploads/2021/09/08/a3.png" style="width: 493px; height: 103px;" />
|
||
<pre>
|
||
<strong>输入:</strong>grid = [[1,3,1,15],[1,3,3,1]]
|
||
<strong>输出:</strong>7
|
||
<strong>解释:</strong>第一个机器人的最佳路径如红色所示,第二个机器人的最佳路径如蓝色所示。
|
||
第一个机器人访问过的单元格将会重置为 0 。
|
||
第二个机器人将会收集到 0 + 1 + 3 + 3 + 0 = 7 个点。
|
||
</pre>
|
||
|
||
<p> </p>
|
||
|
||
<p><strong>提示:</strong></p>
|
||
|
||
<ul>
|
||
<li><code>grid.length == 2</code></li>
|
||
<li><code>n == grid[r].length</code></li>
|
||
<li><code>1 <= n <= 5 * 10<sup>4</sup></code></li>
|
||
<li><code>1 <= grid[r][c] <= 10<sup>5</sup></code></li>
|
||
</ul>
|