mirror of
https://gitee.com/coder-xiaomo/leetcode-problemset
synced 2025-09-05 23:41:41 +08:00
update
This commit is contained in:
@@ -0,0 +1,93 @@
|
||||
<p>给你一个整数数组 <code>nums</code> ,一个整数 <code>k</code> 和一个整数 <code>multiplier</code> 。</p>
|
||||
|
||||
<p>你需要对 <code>nums</code> 执行 <code>k</code> 次操作,每次操作中:</p>
|
||||
|
||||
<ul>
|
||||
<li>找到 <code>nums</code> 中的 <strong>最小</strong> 值 <code>x</code> ,如果存在多个最小值,选择最 <strong>前面</strong> 的一个。</li>
|
||||
<li>将 <code>x</code> 替换为 <code>x * multiplier</code> 。</li>
|
||||
</ul>
|
||||
|
||||
<p>请你返回执行完 <code>k</code> 次乘运算之后,最终的 <code>nums</code> 数组。</p>
|
||||
|
||||
<p> </p>
|
||||
|
||||
<p><strong class="example">示例 1:</strong></p>
|
||||
|
||||
<div class="example-block">
|
||||
<p><span class="example-io"><b>输入:</b>nums = [2,1,3,5,6], k = 5, multiplier = 2</span></p>
|
||||
|
||||
<p><span class="example-io"><b>输出:</b>[8,4,6,5,6]</span></p>
|
||||
|
||||
<p><strong>解释:</strong></p>
|
||||
|
||||
<table>
|
||||
<tbody>
|
||||
<tr>
|
||||
<th>操作</th>
|
||||
<th>结果</th>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>1 次操作后</td>
|
||||
<td>[2, 2, 3, 5, 6]</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>2 次操作后</td>
|
||||
<td>[4, 2, 3, 5, 6]</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>3 次操作后</td>
|
||||
<td>[4, 4, 3, 5, 6]</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>4 次操作后</td>
|
||||
<td>[4, 4, 6, 5, 6]</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>5 次操作后</td>
|
||||
<td>[8, 4, 6, 5, 6]</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
|
||||
<p><strong class="example">示例 2:</strong></p>
|
||||
|
||||
<div class="example-block">
|
||||
<p><span class="example-io"><b>输入:</b></span>nums = [1,2], k = 3, multiplier = 4</p>
|
||||
|
||||
<p><span class="example-io"><b>输出:</b></span>[16,8]</p>
|
||||
|
||||
<p><strong>解释:</strong></p>
|
||||
|
||||
<table>
|
||||
<tbody>
|
||||
<tr>
|
||||
<th>操作</th>
|
||||
<th>结果</th>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>1 次操作后</td>
|
||||
<td>[4, 2]</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>2 次操作后</td>
|
||||
<td>[4, 8]</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>3 次操作后</td>
|
||||
<td>[16, 8]</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
|
||||
<p> </p>
|
||||
|
||||
<p><strong>提示:</strong></p>
|
||||
|
||||
<ul>
|
||||
<li><code>1 <= nums.length <= 100</code></li>
|
||||
<li><code>1 <= nums[i] <= 100</code></li>
|
||||
<li><code>1 <= k <= 10</code></li>
|
||||
<li><code>1 <= multiplier <= 5</code></li>
|
||||
</ul>
|
@@ -0,0 +1,99 @@
|
||||
<p>给你一个整数数组 <code>nums</code> ,一个整数 <code>k</code> 和一个整数 <code>multiplier</code> 。</p>
|
||||
|
||||
<p>你需要对 <code>nums</code> 执行 <code>k</code> 次操作,每次操作中:</p>
|
||||
|
||||
<ul>
|
||||
<li>找到 <code>nums</code> 中的 <strong>最小</strong> 值 <code>x</code> ,如果存在多个最小值,选择最 <strong>前面</strong> 的一个。</li>
|
||||
<li>将 <code>x</code> 替换为 <code>x * multiplier</code> 。</li>
|
||||
</ul>
|
||||
|
||||
<p><code>k</code> 次操作以后,你需要将 <code>nums</code> 中每一个数值对 <code>10<sup>9</sup> + 7</code> 取余。</p>
|
||||
|
||||
<p>请你返回执行完 <code>k</code> 次乘运算以及取余运算之后,最终的 <code>nums</code> 数组。</p>
|
||||
|
||||
<p> </p>
|
||||
|
||||
<p><strong class="example">示例 1:</strong></p>
|
||||
|
||||
<div class="example-block">
|
||||
<p><span class="example-io"><b>输入:</b>nums = [2,1,3,5,6], k = 5, multiplier = 2</span></p>
|
||||
|
||||
<p><span class="example-io"><b>输出:</b>[8,4,6,5,6]</span></p>
|
||||
|
||||
<p><strong>解释:</strong></p>
|
||||
|
||||
<table>
|
||||
<tbody>
|
||||
<tr>
|
||||
<th>操作</th>
|
||||
<th>结果</th>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>1 次操作后</td>
|
||||
<td>[2, 2, 3, 5, 6]</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>2 次操作后</td>
|
||||
<td>[4, 2, 3, 5, 6]</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>3 次操作后</td>
|
||||
<td>[4, 4, 3, 5, 6]</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>4 次操作后</td>
|
||||
<td>[4, 4, 6, 5, 6]</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>5 次操作后</td>
|
||||
<td>[8, 4, 6, 5, 6]</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>取余操作后</td>
|
||||
<td>[8, 4, 6, 5, 6]</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
|
||||
<p><strong class="example">示例 2:</strong></p>
|
||||
|
||||
<div class="example-block">
|
||||
<p><span class="example-io"><b>输入:</b>nums = [100000,2000], k = 2, multiplier = 1000000</span></p>
|
||||
|
||||
<p><span class="example-io"><b>输出:</b>[999999307,999999993]</span></p>
|
||||
|
||||
<p><strong>解释:</strong></p>
|
||||
|
||||
<table>
|
||||
<tbody>
|
||||
<tr>
|
||||
<th>操作</th>
|
||||
<th>结果</th>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>1 次操作后</td>
|
||||
<td>[100000, 2000000000]</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>2 次操作后</td>
|
||||
<td>[100000000000, 2000000000]</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>取余操作后</td>
|
||||
<td>[999999307, 999999993]</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
|
||||
<p> </p>
|
||||
|
||||
<p><strong>提示:</strong></p>
|
||||
|
||||
<ul>
|
||||
<li><code>1 <= nums.length <= 10<sup>4</sup></code></li>
|
||||
<li><code>1 <= nums[i] <= 10<sup>9</sup></code></li>
|
||||
<li><code>1 <= k <= 10<sup>9</sup></code></li>
|
||||
<li><code>1 <= multiplier <= 10<sup>6</sup></code></li>
|
||||
</ul>
|
@@ -0,0 +1,52 @@
|
||||
<p>给你一个长度为 <code>n</code> 的 <strong>正</strong> 整数数组 <code>nums</code> 。</p>
|
||||
|
||||
<p>如果两个 <strong>非负</strong> 整数数组 <code>(arr1, arr2)</code> 满足以下条件,我们称它们是 <strong>单调</strong> 数组对:</p>
|
||||
|
||||
<ul>
|
||||
<li>两个数组的长度都是 <code>n</code> 。</li>
|
||||
<li><code>arr1</code> 是单调<strong> 非递减</strong> 的,换句话说 <code>arr1[0] <= arr1[1] <= ... <= arr1[n - 1]</code> 。</li>
|
||||
<li><code>arr2</code> 是单调 <strong>非递增</strong> 的,换句话说 <code>arr2[0] >= arr2[1] >= ... >= arr2[n - 1]</code> 。</li>
|
||||
<li>对于所有的 <code>0 <= i <= n - 1</code> 都有 <code>arr1[i] + arr2[i] == nums[i]</code> 。</li>
|
||||
</ul>
|
||||
|
||||
<p>请你返回所有 <strong>单调</strong> 数组对的数目。</p>
|
||||
|
||||
<p>由于答案可能很大,请你将它对 <code>10<sup>9</sup> + 7</code> <strong>取余</strong> 后返回。</p>
|
||||
|
||||
<p> </p>
|
||||
|
||||
<p><strong class="example">示例 1:</strong></p>
|
||||
|
||||
<div class="example-block">
|
||||
<p><span class="example-io"><b>输入:</b>nums = [2,3,2]</span></p>
|
||||
|
||||
<p><span class="example-io"><b>输出:</b>4</span></p>
|
||||
|
||||
<p><strong>解释:</strong></p>
|
||||
|
||||
<p>单调数组对包括:</p>
|
||||
|
||||
<ol>
|
||||
<li><code>([0, 1, 1], [2, 2, 1])</code></li>
|
||||
<li><code>([0, 1, 2], [2, 2, 0])</code></li>
|
||||
<li><code>([0, 2, 2], [2, 1, 0])</code></li>
|
||||
<li><code>([1, 2, 2], [1, 1, 0])</code></li>
|
||||
</ol>
|
||||
</div>
|
||||
|
||||
<p><strong class="example">示例 2:</strong></p>
|
||||
|
||||
<div class="example-block">
|
||||
<p><span class="example-io"><b>输入:</b>nums = [5,5,5,5]</span></p>
|
||||
|
||||
<p><span class="example-io"><b>输出:</b>126</span></p>
|
||||
</div>
|
||||
|
||||
<p> </p>
|
||||
|
||||
<p><strong>提示:</strong></p>
|
||||
|
||||
<ul>
|
||||
<li><code>1 <= n == nums.length <= 2000</code></li>
|
||||
<li><code>1 <= nums[i] <= 50</code></li>
|
||||
</ul>
|
@@ -0,0 +1,52 @@
|
||||
<p>给你一个长度为 <code>n</code> 的 <strong>正</strong> 整数数组 <code>nums</code> 。</p>
|
||||
|
||||
<p>如果两个 <strong>非负</strong> 整数数组 <code>(arr1, arr2)</code> 满足以下条件,我们称它们是 <strong>单调</strong> 数组对:</p>
|
||||
|
||||
<ul>
|
||||
<li>两个数组的长度都是 <code>n</code> 。</li>
|
||||
<li><code>arr1</code> 是单调<strong> 非递减</strong> 的,换句话说 <code>arr1[0] <= arr1[1] <= ... <= arr1[n - 1]</code> 。</li>
|
||||
<li><code>arr2</code> 是单调 <strong>非递增</strong> 的,换句话说 <code>arr2[0] >= arr2[1] >= ... >= arr2[n - 1]</code> 。</li>
|
||||
<li>对于所有的 <code>0 <= i <= n - 1</code> 都有 <code>arr1[i] + arr2[i] == nums[i]</code> 。</li>
|
||||
</ul>
|
||||
|
||||
<p>请你返回所有 <strong>单调</strong> 数组对的数目。</p>
|
||||
|
||||
<p>由于答案可能很大,请你将它对 <code>10<sup>9</sup> + 7</code> <strong>取余</strong> 后返回。</p>
|
||||
|
||||
<p> </p>
|
||||
|
||||
<p><strong class="example">示例 1:</strong></p>
|
||||
|
||||
<div class="example-block">
|
||||
<p><span class="example-io"><b>输入:</b>nums = [2,3,2]</span></p>
|
||||
|
||||
<p><span class="example-io"><b>输出:</b>4</span></p>
|
||||
|
||||
<p><strong>解释:</strong></p>
|
||||
|
||||
<p>单调数组对包括:</p>
|
||||
|
||||
<ol>
|
||||
<li><code>([0, 1, 1], [2, 2, 1])</code></li>
|
||||
<li><code>([0, 1, 2], [2, 2, 0])</code></li>
|
||||
<li><code>([0, 2, 2], [2, 1, 0])</code></li>
|
||||
<li><code>([1, 2, 2], [1, 1, 0])</code></li>
|
||||
</ol>
|
||||
</div>
|
||||
|
||||
<p><strong class="example">示例 2:</strong></p>
|
||||
|
||||
<div class="example-block">
|
||||
<p><span class="example-io"><b>输入:</b>nums = [5,5,5,5]</span></p>
|
||||
|
||||
<p><span class="example-io"><b>输出:</b>126</span></p>
|
||||
</div>
|
||||
|
||||
<p> </p>
|
||||
|
||||
<p><strong>提示:</strong></p>
|
||||
|
||||
<ul>
|
||||
<li><code>1 <= n == nums.length <= 2000</code></li>
|
||||
<li><code>1 <= nums[i] <= 1000</code></li>
|
||||
</ul>
|
@@ -0,0 +1,55 @@
|
||||
<p>给你两个 <strong>正整数</strong> <code>n</code> 和 <code>k</code>。</p>
|
||||
|
||||
<p>如果整数 <code>x</code> 满足以下全部条件,则该整数是一个 <strong>k 回文数</strong>:</p>
|
||||
|
||||
<ul>
|
||||
<li><code>x</code> 是一个 <span data-keyword="palindrome-integer">回文数</span>。</li>
|
||||
<li><code>x</code> 可以被 <code>k</code> 整除。</li>
|
||||
</ul>
|
||||
|
||||
<p>以字符串形式返回 <strong>最大的 </strong> <code>n</code> 位 <strong>k 回文数</strong>。</p>
|
||||
|
||||
<p><strong>注意</strong>,该整数 <strong>不 </strong>含前导零。</p>
|
||||
|
||||
<p> </p>
|
||||
|
||||
<p><strong class="example">示例 1:</strong></p>
|
||||
|
||||
<div class="example-block">
|
||||
<p><strong>输入:</strong> <span class="example-io">n = 3, k = 5</span></p>
|
||||
|
||||
<p><strong>输出:</strong> <span class="example-io">"595"</span></p>
|
||||
|
||||
<p><strong>解释:</strong></p>
|
||||
|
||||
<p>595 是最大的 3 位 k 回文数。</p>
|
||||
</div>
|
||||
|
||||
<p><strong class="example">示例 2:</strong></p>
|
||||
|
||||
<div class="example-block">
|
||||
<p><strong>输入:</strong> <span class="example-io">n = 1, k = 4</span></p>
|
||||
|
||||
<p><strong>输出:</strong> <span class="example-io">"8"</span></p>
|
||||
|
||||
<p><strong>解释:</strong></p>
|
||||
|
||||
<p>1 位 k 回文数只有 4 和 8。</p>
|
||||
</div>
|
||||
|
||||
<p><strong class="example">示例 3:</strong></p>
|
||||
|
||||
<div class="example-block">
|
||||
<p><strong>输入:</strong> <span class="example-io">n = 5, k = 6</span></p>
|
||||
|
||||
<p><strong>输出:</strong> <span class="example-io">"89898"</span></p>
|
||||
</div>
|
||||
|
||||
<p> </p>
|
||||
|
||||
<p><strong>提示:</strong></p>
|
||||
|
||||
<ul>
|
||||
<li><code>1 <= n <= 10<sup>5</sup></code></li>
|
||||
<li><code>1 <= k <= 9</code></li>
|
||||
</ul>
|
@@ -0,0 +1,55 @@
|
||||
<p>给你一个 <code>m x n</code> 的二维整数数组 <code>board</code> ,它表示一个国际象棋棋盘,其中 <code>board[i][j]</code> 表示格子 <code>(i, j)</code> 的 <strong>价值</strong> 。</p>
|
||||
|
||||
<p>处于 <strong>同一行</strong> 或者 <strong>同一列</strong> 车会互相 <strong>攻击</strong> 。你需要在棋盘上放三个车,确保它们两两之间都 <b>无法互相攻击</b> 。</p>
|
||||
|
||||
<p>请你返回满足上述条件下,三个车所在格子 <strong>值</strong> 之和 <strong>最大</strong> 为多少。</p>
|
||||
|
||||
<p> </p>
|
||||
|
||||
<p><strong class="example">示例 1:</strong></p>
|
||||
|
||||
<div class="example-block">
|
||||
<p><span class="example-io"><b>输入:</b>board = </span>[[-3,1,1,1],[-3,1,-3,1],[-3,2,1,1]]</p>
|
||||
|
||||
<p><b>输出:</b>4</p>
|
||||
|
||||
<p><strong>解释:</strong></p>
|
||||
|
||||
<p><img alt="" src="https://assets.leetcode.com/uploads/2024/08/08/rooks2.png" style="width: 294px; height: 450px;" /></p>
|
||||
|
||||
<p>我们可以将车分别放在格子 <code>(0, 2)</code> ,<code>(1, 3)</code> 和 <code>(2, 1)</code> 处,价值之和为 <code>1 + 1 + 2 = 4</code> 。</p>
|
||||
</div>
|
||||
|
||||
<p><strong class="example">示例 2:</strong></p>
|
||||
|
||||
<div class="example-block">
|
||||
<p><span class="example-io"><b>输入:</b>board = [[1,2,3],[4,5,6],[7,8,9]]</span></p>
|
||||
|
||||
<p><span class="example-io"><b>输出:</b>15</span></p>
|
||||
|
||||
<p><strong>解释:</strong></p>
|
||||
|
||||
<p>我们可以将车分别放在格子 <code>(0, 0)</code> ,<code>(1, 1)</code> 和 <code>(2, 2)</code> 处,价值之和为 <code>1 + 5 + 9 = 15</code> 。</p>
|
||||
</div>
|
||||
|
||||
<p><strong class="example">示例 3:</strong></p>
|
||||
|
||||
<div class="example-block">
|
||||
<p><span class="example-io"><b>输入:</b>board = [[1,1,1],[1,1,1],[1,1,1]]</span></p>
|
||||
|
||||
<p><span class="example-io"><b>输出:</b>3</span></p>
|
||||
|
||||
<p><strong>解释:</strong></p>
|
||||
|
||||
<p>我们可以将车分别放在格子 <code>(0, 2)</code> ,<code>(1, 1)</code> 和 <code>(2, 0)</code> 处,价值之和为 <code>1 + 1 + 1 = 3</code> 。</p>
|
||||
</div>
|
||||
|
||||
<p> </p>
|
||||
|
||||
<p><strong>提示:</strong></p>
|
||||
|
||||
<ul>
|
||||
<li><code>3 <= m == board.length <= 100</code></li>
|
||||
<li><code>3 <= n == board[i].length <= 100</code></li>
|
||||
<li><code>-10<sup>9</sup> <= board[i][j] <= 10<sup>9</sup></code></li>
|
||||
</ul>
|
@@ -0,0 +1,55 @@
|
||||
<p>给你一个 <code>m x n</code> 的二维整数数组 <code>board</code> ,它表示一个国际象棋棋盘,其中 <code>board[i][j]</code> 表示格子 <code>(i, j)</code> 的 <strong>价值</strong> 。</p>
|
||||
|
||||
<p>处于 <strong>同一行</strong> 或者 <strong>同一列</strong> 车会互相 <strong>攻击</strong> 。你需要在棋盘上放三个车,确保它们两两之间都 <b>无法互相攻击</b> 。</p>
|
||||
|
||||
<p>请你返回满足上述条件下,三个车所在格子 <strong>值</strong> 之和 <strong>最大</strong> 为多少。</p>
|
||||
|
||||
<p> </p>
|
||||
|
||||
<p><strong class="example">示例 1:</strong></p>
|
||||
|
||||
<div class="example-block">
|
||||
<p><span class="example-io"><b>输入:</b>board = </span>[[-3,1,1,1],[-3,1,-3,1],[-3,2,1,1]]</p>
|
||||
|
||||
<p><b>输出:</b>4</p>
|
||||
|
||||
<p><strong>解释:</strong></p>
|
||||
|
||||
<p><img alt="" src="https://assets.leetcode.com/uploads/2024/08/08/rooks2.png" style="width: 294px; height: 450px;" /></p>
|
||||
|
||||
<p>我们可以将车分别放在格子 <code>(0, 2)</code> ,<code>(1, 3)</code> 和 <code>(2, 1)</code> 处,价值之和为 <code>1 + 1 + 2 = 4</code> 。</p>
|
||||
</div>
|
||||
|
||||
<p><strong class="example">示例 2:</strong></p>
|
||||
|
||||
<div class="example-block">
|
||||
<p><span class="example-io"><b>输入:</b>board = [[1,2,3],[4,5,6],[7,8,9]]</span></p>
|
||||
|
||||
<p><span class="example-io"><b>输出:</b>15</span></p>
|
||||
|
||||
<p><strong>解释:</strong></p>
|
||||
|
||||
<p>我们可以将车分别放在格子 <code>(0, 0)</code> ,<code>(1, 1)</code> 和 <code>(2, 2)</code> 处,价值之和为 <code>1 + 5 + 9 = 15</code> 。</p>
|
||||
</div>
|
||||
|
||||
<p><strong class="example">示例 3:</strong></p>
|
||||
|
||||
<div class="example-block">
|
||||
<p><span class="example-io"><b>输入:</b>board = [[1,1,1],[1,1,1],[1,1,1]]</span></p>
|
||||
|
||||
<p><span class="example-io"><b>输出:</b>3</span></p>
|
||||
|
||||
<p><strong>解释:</strong></p>
|
||||
|
||||
<p>我们可以将车分别放在格子 <code>(0, 2)</code> ,<code>(1, 1)</code> 和 <code>(2, 0)</code> 处,价值之和为 <code>1 + 1 + 1 = 3</code> 。</p>
|
||||
</div>
|
||||
|
||||
<p> </p>
|
||||
|
||||
<p><strong>提示:</strong></p>
|
||||
|
||||
<ul>
|
||||
<li><code>3 <= m == board.length <= 500</code></li>
|
||||
<li><code>3 <= n == board[i].length <= 500</code></li>
|
||||
<li><code>-10<sup>9</sup> <= board[i][j] <= 10<sup>9</sup></code></li>
|
||||
</ul>
|
163
leetcode-cn/problem (Chinese)/矩阵中的蛇 [snake-in-matrix].html
Normal file
163
leetcode-cn/problem (Chinese)/矩阵中的蛇 [snake-in-matrix].html
Normal file
@@ -0,0 +1,163 @@
|
||||
<p>大小为 <code>n x n</code> 的矩阵 <code>grid</code> 中有一条蛇。蛇可以朝 <strong>四个可能的方向 </strong>移动。矩阵中的每个单元格都使用位置进行标识: <code>grid[i][j] = (i * n) + j</code>。</p>
|
||||
|
||||
<p>蛇从单元格 0 开始,并遵循一系列命令移动。</p>
|
||||
|
||||
<p>给你一个整数 <code>n</code> 表示 <code>grid</code> 的大小,另给你一个字符串数组 <code>commands</code>,其中包括 <code>"UP"</code>、<code>"RIGHT"</code>、<code>"DOWN"</code> 和 <code>"LEFT"</code>。题目测评数据保证蛇在整个移动过程中将始终位于 <code>grid</code> 边界内。</p>
|
||||
|
||||
<p>返回执行 <code>commands</code> 后蛇所停留的最终单元格的位置。</p>
|
||||
|
||||
<p> </p>
|
||||
|
||||
<p><strong class="example">示例 1:</strong></p>
|
||||
|
||||
<div class="example-block">
|
||||
<p><strong>输入:</strong><span class="example-io">n = 2, commands = ["RIGHT","DOWN"]</span></p>
|
||||
|
||||
<p><strong>输出:</strong><span class="example-io">3</span></p>
|
||||
|
||||
<p><strong>解释:</strong></p>
|
||||
|
||||
<div style="display:flex; gap: 12px;">
|
||||
<table border="1" cellspacing="3" style="border-collapse: separate; text-align: center;">
|
||||
<tbody>
|
||||
<tr>
|
||||
<td data-darkreader-inline-border-bottom="" data-darkreader-inline-border-left="" data-darkreader-inline-border-right="" data-darkreader-inline-border-top="" style="padding: 5px 10px; border: 1px solid red; --darkreader-inline-border-top: #8c8273; --darkreader-inline-border-right: #8c8273; --darkreader-inline-border-bottom: #8c8273; --darkreader-inline-border-left: #8c8273;">0</td>
|
||||
<td data-darkreader-inline-border-bottom="" data-darkreader-inline-border-left="" data-darkreader-inline-border-right="" data-darkreader-inline-border-top="" style="padding: 5px 10px; border: 1px solid black; --darkreader-inline-border-top: #b30000; --darkreader-inline-border-right: #b30000; --darkreader-inline-border-bottom: #b30000; --darkreader-inline-border-left: #b30000;">1</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td data-darkreader-inline-border-bottom="" data-darkreader-inline-border-left="" data-darkreader-inline-border-right="" data-darkreader-inline-border-top="" style="padding: 5px 10px; border: 1px solid black; --darkreader-inline-border-top: #8c8273; --darkreader-inline-border-right: #8c8273; --darkreader-inline-border-bottom: #8c8273; --darkreader-inline-border-left: #8c8273;">2</td>
|
||||
<td data-darkreader-inline-border-bottom="" data-darkreader-inline-border-left="" data-darkreader-inline-border-right="" data-darkreader-inline-border-top="" style="padding: 5px 10px; border: 1px solid black; --darkreader-inline-border-top: #b30000; --darkreader-inline-border-right: #b30000; --darkreader-inline-border-bottom: #b30000; --darkreader-inline-border-left: #b30000;">3</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
<table border="1" cellspacing="3" style="border-collapse: separate; text-align: center;">
|
||||
<tbody>
|
||||
<tr>
|
||||
<td data-darkreader-inline-border-bottom="" data-darkreader-inline-border-left="" data-darkreader-inline-border-right="" data-darkreader-inline-border-top="" style="padding: 5px 10px; border: 1px solid black; --darkreader-inline-border-top: #8c8273; --darkreader-inline-border-right: #8c8273; --darkreader-inline-border-bottom: #8c8273; --darkreader-inline-border-left: #8c8273;">0</td>
|
||||
<td data-darkreader-inline-border-bottom="" data-darkreader-inline-border-left="" data-darkreader-inline-border-right="" data-darkreader-inline-border-top="" style="padding: 5px 10px; border: 1px solid red; --darkreader-inline-border-top: #b30000; --darkreader-inline-border-right: #b30000; --darkreader-inline-border-bottom: #b30000; --darkreader-inline-border-left: #b30000;">1</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td data-darkreader-inline-border-bottom="" data-darkreader-inline-border-left="" data-darkreader-inline-border-right="" data-darkreader-inline-border-top="" style="padding: 5px 10px; border: 1px solid black; --darkreader-inline-border-top: #8c8273; --darkreader-inline-border-right: #8c8273; --darkreader-inline-border-bottom: #8c8273; --darkreader-inline-border-left: #8c8273;">2</td>
|
||||
<td data-darkreader-inline-border-bottom="" data-darkreader-inline-border-left="" data-darkreader-inline-border-right="" data-darkreader-inline-border-top="" style="padding: 5px 10px; border: 1px solid black; --darkreader-inline-border-top: #b30000; --darkreader-inline-border-right: #b30000; --darkreader-inline-border-bottom: #b30000; --darkreader-inline-border-left: #b30000;">3</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
<table border="1" cellspacing="3" style="border-collapse: separate; text-align: center;">
|
||||
<tbody>
|
||||
<tr>
|
||||
<td data-darkreader-inline-border-bottom="" data-darkreader-inline-border-left="" data-darkreader-inline-border-right="" data-darkreader-inline-border-top="" style="padding: 5px 10px; border: 1px solid black; --darkreader-inline-border-top: #8c8273; --darkreader-inline-border-right: #8c8273; --darkreader-inline-border-bottom: #8c8273; --darkreader-inline-border-left: #8c8273;">0</td>
|
||||
<td data-darkreader-inline-border-bottom="" data-darkreader-inline-border-left="" data-darkreader-inline-border-right="" data-darkreader-inline-border-top="" style="padding: 5px 10px; border: 1px solid black; --darkreader-inline-border-top: #b30000; --darkreader-inline-border-right: #b30000; --darkreader-inline-border-bottom: #b30000; --darkreader-inline-border-left: #b30000;">1</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td data-darkreader-inline-border-bottom="" data-darkreader-inline-border-left="" data-darkreader-inline-border-right="" data-darkreader-inline-border-top="" style="padding: 5px 10px; border: 1px solid black; --darkreader-inline-border-top: #8c8273; --darkreader-inline-border-right: #8c8273; --darkreader-inline-border-bottom: #8c8273; --darkreader-inline-border-left: #8c8273;">2</td>
|
||||
<td data-darkreader-inline-border-bottom="" data-darkreader-inline-border-left="" data-darkreader-inline-border-right="" data-darkreader-inline-border-top="" style="padding: 5px 10px; border: 1px solid red; --darkreader-inline-border-top: #b30000; --darkreader-inline-border-right: #b30000; --darkreader-inline-border-bottom: #b30000; --darkreader-inline-border-left: #b30000;">3</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<p><strong class="example">示例 2:</strong></p>
|
||||
|
||||
<div class="example-block">
|
||||
<p><strong>输入:</strong><span class="example-io">n = 3, commands = ["DOWN","RIGHT","UP"]</span></p>
|
||||
|
||||
<p><strong>输出:</strong><span class="example-io">1</span></p>
|
||||
|
||||
<p><strong>解释:</strong></p>
|
||||
|
||||
<div style="display:flex; gap: 12px;">
|
||||
<table border="1" cellspacing="3" style="border-collapse: separate; text-align: center;">
|
||||
<tbody>
|
||||
<tr>
|
||||
<td data-darkreader-inline-border-bottom="" data-darkreader-inline-border-left="" data-darkreader-inline-border-right="" data-darkreader-inline-border-top="" style="padding: 5px 10px; border: 1px solid red; --darkreader-inline-border-top: #8c8273; --darkreader-inline-border-right: #8c8273; --darkreader-inline-border-bottom: #8c8273; --darkreader-inline-border-left: #8c8273;">0</td>
|
||||
<td data-darkreader-inline-border-bottom="" data-darkreader-inline-border-left="" data-darkreader-inline-border-right="" data-darkreader-inline-border-top="" style="padding: 5px 10px; border: 1px solid black; --darkreader-inline-border-top: #b30000; --darkreader-inline-border-right: #b30000; --darkreader-inline-border-bottom: #b30000; --darkreader-inline-border-left: #b30000;">1</td>
|
||||
<td data-darkreader-inline-border-bottom="" data-darkreader-inline-border-left="" data-darkreader-inline-border-right="" data-darkreader-inline-border-top="" style="padding: 5px 10px; border: 1px solid black; --darkreader-inline-border-top: #8c8273; --darkreader-inline-border-right: #8c8273; --darkreader-inline-border-bottom: #8c8273; --darkreader-inline-border-left: #8c8273;">2</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td data-darkreader-inline-border-bottom="" data-darkreader-inline-border-left="" data-darkreader-inline-border-right="" data-darkreader-inline-border-top="" style="padding: 5px 10px; border: 1px solid black; --darkreader-inline-border-top: #8c8273; --darkreader-inline-border-right: #8c8273; --darkreader-inline-border-bottom: #8c8273; --darkreader-inline-border-left: #8c8273;">3</td>
|
||||
<td data-darkreader-inline-border-bottom="" data-darkreader-inline-border-left="" data-darkreader-inline-border-right="" data-darkreader-inline-border-top="" style="padding: 5px 10px; border: 1px solid black; --darkreader-inline-border-top: #b30000; --darkreader-inline-border-right: #b30000; --darkreader-inline-border-bottom: #b30000; --darkreader-inline-border-left: #b30000;">4</td>
|
||||
<td data-darkreader-inline-border-bottom="" data-darkreader-inline-border-left="" data-darkreader-inline-border-right="" data-darkreader-inline-border-top="" style="padding: 5px 10px; border: 1px solid black; --darkreader-inline-border-top: #b30000; --darkreader-inline-border-right: #b30000; --darkreader-inline-border-bottom: #b30000; --darkreader-inline-border-left: #b30000;">5</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td data-darkreader-inline-border-bottom="" data-darkreader-inline-border-left="" data-darkreader-inline-border-right="" data-darkreader-inline-border-top="" style="padding: 5px 10px; border: 1px solid black; --darkreader-inline-border-top: #8c8273; --darkreader-inline-border-right: #8c8273; --darkreader-inline-border-bottom: #8c8273; --darkreader-inline-border-left: #8c8273;">6</td>
|
||||
<td data-darkreader-inline-border-bottom="" data-darkreader-inline-border-left="" data-darkreader-inline-border-right="" data-darkreader-inline-border-top="" style="padding: 5px 10px; border: 1px solid black; --darkreader-inline-border-top: #8c8273; --darkreader-inline-border-right: #8c8273; --darkreader-inline-border-bottom: #8c8273; --darkreader-inline-border-left: #8c8273;">7</td>
|
||||
<td data-darkreader-inline-border-bottom="" data-darkreader-inline-border-left="" data-darkreader-inline-border-right="" data-darkreader-inline-border-top="" style="padding: 5px 10px; border: 1px solid black; --darkreader-inline-border-top: #8c8273; --darkreader-inline-border-right: #8c8273; --darkreader-inline-border-bottom: #8c8273; --darkreader-inline-border-left: #8c8273;">8</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
<table border="1" cellspacing="3" style="border-collapse: separate; text-align: center;">
|
||||
<tbody>
|
||||
<tr>
|
||||
<td data-darkreader-inline-border-bottom="" data-darkreader-inline-border-left="" data-darkreader-inline-border-right="" data-darkreader-inline-border-top="" style="padding: 5px 10px; border: 1px solid black; --darkreader-inline-border-top: #8c8273; --darkreader-inline-border-right: #8c8273; --darkreader-inline-border-bottom: #8c8273; --darkreader-inline-border-left: #8c8273;">0</td>
|
||||
<td data-darkreader-inline-border-bottom="" data-darkreader-inline-border-left="" data-darkreader-inline-border-right="" data-darkreader-inline-border-top="" style="padding: 5px 10px; border: 1px solid black; --darkreader-inline-border-top: #b30000; --darkreader-inline-border-right: #b30000; --darkreader-inline-border-bottom: #b30000; --darkreader-inline-border-left: #b30000;">1</td>
|
||||
<td data-darkreader-inline-border-bottom="" data-darkreader-inline-border-left="" data-darkreader-inline-border-right="" data-darkreader-inline-border-top="" style="padding: 5px 10px; border: 1px solid black; --darkreader-inline-border-top: #8c8273; --darkreader-inline-border-right: #8c8273; --darkreader-inline-border-bottom: #8c8273; --darkreader-inline-border-left: #8c8273;">2</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td data-darkreader-inline-border-bottom="" data-darkreader-inline-border-left="" data-darkreader-inline-border-right="" data-darkreader-inline-border-top="" style="padding: 5px 10px; border: 1px solid red; --darkreader-inline-border-top: #8c8273; --darkreader-inline-border-right: #8c8273; --darkreader-inline-border-bottom: #8c8273; --darkreader-inline-border-left: #8c8273;">3</td>
|
||||
<td data-darkreader-inline-border-bottom="" data-darkreader-inline-border-left="" data-darkreader-inline-border-right="" data-darkreader-inline-border-top="" style="padding: 5px 10px; border: 1px solid black; --darkreader-inline-border-top: #b30000; --darkreader-inline-border-right: #b30000; --darkreader-inline-border-bottom: #b30000; --darkreader-inline-border-left: #b30000;">4</td>
|
||||
<td data-darkreader-inline-border-bottom="" data-darkreader-inline-border-left="" data-darkreader-inline-border-right="" data-darkreader-inline-border-top="" style="padding: 5px 10px; border: 1px solid black; --darkreader-inline-border-top: #b30000; --darkreader-inline-border-right: #b30000; --darkreader-inline-border-bottom: #b30000; --darkreader-inline-border-left: #b30000;">5</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td data-darkreader-inline-border-bottom="" data-darkreader-inline-border-left="" data-darkreader-inline-border-right="" data-darkreader-inline-border-top="" style="padding: 5px 10px; border: 1px solid black; --darkreader-inline-border-top: #8c8273; --darkreader-inline-border-right: #8c8273; --darkreader-inline-border-bottom: #8c8273; --darkreader-inline-border-left: #8c8273;">6</td>
|
||||
<td data-darkreader-inline-border-bottom="" data-darkreader-inline-border-left="" data-darkreader-inline-border-right="" data-darkreader-inline-border-top="" style="padding: 5px 10px; border: 1px solid black; --darkreader-inline-border-top: #8c8273; --darkreader-inline-border-right: #8c8273; --darkreader-inline-border-bottom: #8c8273; --darkreader-inline-border-left: #8c8273;">7</td>
|
||||
<td data-darkreader-inline-border-bottom="" data-darkreader-inline-border-left="" data-darkreader-inline-border-right="" data-darkreader-inline-border-top="" style="padding: 5px 10px; border: 1px solid black; --darkreader-inline-border-top: #8c8273; --darkreader-inline-border-right: #8c8273; --darkreader-inline-border-bottom: #8c8273; --darkreader-inline-border-left: #8c8273;">8</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
<table border="1" cellspacing="3" style="border-collapse: separate; text-align: center;">
|
||||
<tbody>
|
||||
<tr>
|
||||
<td data-darkreader-inline-border-bottom="" data-darkreader-inline-border-left="" data-darkreader-inline-border-right="" data-darkreader-inline-border-top="" style="padding: 5px 10px; border: 1px solid black; --darkreader-inline-border-top: #8c8273; --darkreader-inline-border-right: #8c8273; --darkreader-inline-border-bottom: #8c8273; --darkreader-inline-border-left: #8c8273;">0</td>
|
||||
<td data-darkreader-inline-border-bottom="" data-darkreader-inline-border-left="" data-darkreader-inline-border-right="" data-darkreader-inline-border-top="" style="padding: 5px 10px; border: 1px solid black; --darkreader-inline-border-top: #8c8273; --darkreader-inline-border-right: #8c8273; --darkreader-inline-border-bottom: #8c8273; --darkreader-inline-border-left: #8c8273;">1</td>
|
||||
<td data-darkreader-inline-border-bottom="" data-darkreader-inline-border-left="" data-darkreader-inline-border-right="" data-darkreader-inline-border-top="" style="padding: 5px 10px; border: 1px solid black; --darkreader-inline-border-top: #8c8273; --darkreader-inline-border-right: #8c8273; --darkreader-inline-border-bottom: #8c8273; --darkreader-inline-border-left: #8c8273;">2</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td data-darkreader-inline-border-bottom="" data-darkreader-inline-border-left="" data-darkreader-inline-border-right="" data-darkreader-inline-border-top="" style="padding: 5px 10px; border: 1px solid black; --darkreader-inline-border-top: #8c8273; --darkreader-inline-border-right: #8c8273; --darkreader-inline-border-bottom: #8c8273; --darkreader-inline-border-left: #8c8273;">3</td>
|
||||
<td data-darkreader-inline-border-bottom="" data-darkreader-inline-border-left="" data-darkreader-inline-border-right="" data-darkreader-inline-border-top="" style="padding: 5px 10px; border: 1px solid red; --darkreader-inline-border-top: #b30000; --darkreader-inline-border-right: #b30000; --darkreader-inline-border-bottom: #b30000; --darkreader-inline-border-left: #b30000;">4</td>
|
||||
<td data-darkreader-inline-border-bottom="" data-darkreader-inline-border-left="" data-darkreader-inline-border-right="" data-darkreader-inline-border-top="" style="padding: 5px 10px; border: 1px solid black; --darkreader-inline-border-top: #b30000; --darkreader-inline-border-right: #b30000; --darkreader-inline-border-bottom: #b30000; --darkreader-inline-border-left: #b30000;">5</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td data-darkreader-inline-border-bottom="" data-darkreader-inline-border-left="" data-darkreader-inline-border-right="" data-darkreader-inline-border-top="" style="padding: 5px 10px; border: 1px solid black; --darkreader-inline-border-top: #8c8273; --darkreader-inline-border-right: #8c8273; --darkreader-inline-border-bottom: #8c8273; --darkreader-inline-border-left: #8c8273;">6</td>
|
||||
<td data-darkreader-inline-border-bottom="" data-darkreader-inline-border-left="" data-darkreader-inline-border-right="" data-darkreader-inline-border-top="" style="padding: 5px 10px; border: 1px solid black; --darkreader-inline-border-top: #b30000; --darkreader-inline-border-right: #b30000; --darkreader-inline-border-bottom: #b30000; --darkreader-inline-border-left: #b30000;">7</td>
|
||||
<td data-darkreader-inline-border-bottom="" data-darkreader-inline-border-left="" data-darkreader-inline-border-right="" data-darkreader-inline-border-top="" style="padding: 5px 10px; border: 1px solid black; --darkreader-inline-border-top: #8c8273; --darkreader-inline-border-right: #8c8273; --darkreader-inline-border-bottom: #8c8273; --darkreader-inline-border-left: #8c8273;">8</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
<table border="1" cellspacing="3" style="border-collapse: separate; text-align: center;">
|
||||
<tbody>
|
||||
<tr>
|
||||
<td data-darkreader-inline-border-bottom="" data-darkreader-inline-border-left="" data-darkreader-inline-border-right="" data-darkreader-inline-border-top="" style="padding: 5px 10px; border: 1px solid black; --darkreader-inline-border-top: #8c8273; --darkreader-inline-border-right: #8c8273; --darkreader-inline-border-bottom: #8c8273; --darkreader-inline-border-left: #8c8273;">0</td>
|
||||
<td data-darkreader-inline-border-bottom="" data-darkreader-inline-border-left="" data-darkreader-inline-border-right="" data-darkreader-inline-border-top="" style="padding: 5px 10px; border: 1px solid red; --darkreader-inline-border-top: #b30000; --darkreader-inline-border-right: #b30000; --darkreader-inline-border-bottom: #b30000; --darkreader-inline-border-left: #b30000;">1</td>
|
||||
<td data-darkreader-inline-border-bottom="" data-darkreader-inline-border-left="" data-darkreader-inline-border-right="" data-darkreader-inline-border-top="" style="padding: 5px 10px; border: 1px solid black; --darkreader-inline-border-top: #8c8273; --darkreader-inline-border-right: #8c8273; --darkreader-inline-border-bottom: #8c8273; --darkreader-inline-border-left: #8c8273;">2</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td data-darkreader-inline-border-bottom="" data-darkreader-inline-border-left="" data-darkreader-inline-border-right="" data-darkreader-inline-border-top="" style="padding: 5px 10px; border: 1px solid black; --darkreader-inline-border-top: #8c8273; --darkreader-inline-border-right: #8c8273; --darkreader-inline-border-bottom: #8c8273; --darkreader-inline-border-left: #8c8273;">3</td>
|
||||
<td data-darkreader-inline-border-bottom="" data-darkreader-inline-border-left="" data-darkreader-inline-border-right="" data-darkreader-inline-border-top="" style="padding: 5px 10px; border: 1px solid black; --darkreader-inline-border-top: #b30000; --darkreader-inline-border-right: #b30000; --darkreader-inline-border-bottom: #b30000; --darkreader-inline-border-left: #b30000;">4</td>
|
||||
<td data-darkreader-inline-border-bottom="" data-darkreader-inline-border-left="" data-darkreader-inline-border-right="" data-darkreader-inline-border-top="" style="padding: 5px 10px; border: 1px solid black; --darkreader-inline-border-top: #b30000; --darkreader-inline-border-right: #b30000; --darkreader-inline-border-bottom: #b30000; --darkreader-inline-border-left: #b30000;">5</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td data-darkreader-inline-border-bottom="" data-darkreader-inline-border-left="" data-darkreader-inline-border-right="" data-darkreader-inline-border-top="" style="padding: 5px 10px; border: 1px solid black; --darkreader-inline-border-top: #8c8273; --darkreader-inline-border-right: #8c8273; --darkreader-inline-border-bottom: #8c8273; --darkreader-inline-border-left: #8c8273;">6</td>
|
||||
<td data-darkreader-inline-border-bottom="" data-darkreader-inline-border-left="" data-darkreader-inline-border-right="" data-darkreader-inline-border-top="" style="padding: 5px 10px; border: 1px solid black; --darkreader-inline-border-top: #8c8273; --darkreader-inline-border-right: #8c8273; --darkreader-inline-border-bottom: #8c8273; --darkreader-inline-border-left: #8c8273;">7</td>
|
||||
<td data-darkreader-inline-border-bottom="" data-darkreader-inline-border-left="" data-darkreader-inline-border-right="" data-darkreader-inline-border-top="" style="padding: 5px 10px; border: 1px solid black; --darkreader-inline-border-top: #8c8273; --darkreader-inline-border-right: #8c8273; --darkreader-inline-border-bottom: #8c8273; --darkreader-inline-border-left: #8c8273;">8</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<p> </p>
|
||||
|
||||
<p><strong>提示:</strong></p>
|
||||
|
||||
<ul>
|
||||
<li><code>2 <= n <= 10</code></li>
|
||||
<li><code>1 <= commands.length <= 100</code></li>
|
||||
<li><code>commands</code> 仅由 <code>"UP"</code>、<code>"RIGHT"</code>、<code>"DOWN"</code> 和 <code>"LEFT"</code> 组成。</li>
|
||||
<li>生成的测评数据确保蛇不会移动到矩阵的边界外。</li>
|
||||
</ul>
|
@@ -0,0 +1,59 @@
|
||||
<p>现有一棵 <strong>无向</strong> 树,树中包含 <code>n</code> 个节点,按从 <code>0</code> 到 <code>n - 1</code> 标记。树的根节点是节点 <code>0</code> 。给你一个长度为 <code>n - 1</code> 的二维整数数组 <code>edges</code>,其中 <code>edges[i] = [a<sub>i</sub>, b<sub>i</sub>]</code> 表示树中节点 <code>a<sub>i</sub></code> 与节点 <code>b<sub>i</sub></code> 之间存在一条边。</p>
|
||||
|
||||
<p>如果一个节点的所有子节点为根的 <span data-keyword="subtree">子树</span> 包含的节点数相同,则认为该节点是一个 <strong>好节点</strong>。</p>
|
||||
|
||||
<p>返回给定树中<strong> 好节点 </strong>的数量。</p>
|
||||
|
||||
<p><strong>子树</strong> 指的是一个节点以及它所有后代节点构成的一棵树。</p>
|
||||
|
||||
<p> </p>
|
||||
|
||||
<p> </p>
|
||||
|
||||
<p><strong class="example">示例 1:</strong></p>
|
||||
|
||||
<div class="example-block">
|
||||
<p><strong>输入:</strong><span class="example-io">edges = [[0,1],[0,2],[1,3],[1,4],[2,5],[2,6]]</span></p>
|
||||
|
||||
<p><strong>输出:</strong><span class="example-io">7</span></p>
|
||||
|
||||
<p><strong>说明:</strong></p>
|
||||
<img alt="" src="https://assets.leetcode.com/uploads/2024/05/26/tree1.png" style="width: 360px; height: 158px;" />
|
||||
<p>树的所有节点都是好节点。</p>
|
||||
</div>
|
||||
|
||||
<p><strong class="example">示例 2:</strong></p>
|
||||
|
||||
<div class="example-block">
|
||||
<p><strong>输入:</strong><span class="example-io">edges = [[0,1],[1,2],[2,3],[3,4],[0,5],[1,6],[2,7],[3,8]]</span></p>
|
||||
|
||||
<p><strong>输出:</strong><span class="example-io">6</span></p>
|
||||
|
||||
<p><strong>说明:</strong></p>
|
||||
<img alt="" src="https://assets.leetcode.com/uploads/2024/06/03/screenshot-2024-06-03-193552.png" style="width: 360px; height: 303px;" />
|
||||
<p>树中有 6 个好节点。上图中已将这些节点着色。</p>
|
||||
</div>
|
||||
|
||||
<p><strong class="example">示例 3:</strong></p>
|
||||
|
||||
<div class="example-block">
|
||||
<p><span class="example-io"><b>输入:</b>edges = [[0,1],[1,2],[1,3],[1,4],[0,5],[5,6],[6,7],[7,8],[0,9],[9,10],[9,12],[10,11]]</span></p>
|
||||
|
||||
<p><span class="example-io"><b>输出:</b>12</span></p>
|
||||
|
||||
<p><strong>解释:</strong></p>
|
||||
<img alt="" src="https://assets.leetcode.com/uploads/2024/08/08/rob.jpg" style="width: 450px; height: 277px;" />
|
||||
<p>除了节点 9 以外其他所有节点都是好节点。</p>
|
||||
</div>
|
||||
|
||||
<p> </p>
|
||||
|
||||
<p><strong>提示:</strong></p>
|
||||
|
||||
<ul>
|
||||
<li><code>2 <= n <= 10<sup>5</sup></code></li>
|
||||
<li><code>edges.length == n - 1</code></li>
|
||||
<li><code>edges[i].length == 2</code></li>
|
||||
<li><code>0 <= a<sub>i</sub>, b<sub>i</sub> < n</code></li>
|
||||
<li>输入确保 <code>edges</code> 总表示一棵有效的树。</li>
|
||||
</ul>
|
@@ -0,0 +1,58 @@
|
||||
<p>给你一个 <strong>二进制</strong> 字符串 <code>s</code> 和一个整数 <code>k</code>。</p>
|
||||
|
||||
<p>如果一个 <strong>二进制字符串</strong> 满足以下任一条件,则认为该字符串满足 <strong>k 约束</strong>:</p>
|
||||
|
||||
<ul>
|
||||
<li>字符串中 <code>0</code> 的数量最多为 <code>k</code>。</li>
|
||||
<li>字符串中 <code>1</code> 的数量最多为 <code>k</code>。</li>
|
||||
</ul>
|
||||
|
||||
<p>返回一个整数,表示 <code>s</code> 的所有满足 <strong>k 约束 </strong>的<span data-keyword="substring-nonempty">子字符串</span>的数量。</p>
|
||||
|
||||
<p> </p>
|
||||
|
||||
<p><strong class="example">示例 1:</strong></p>
|
||||
|
||||
<div class="example-block">
|
||||
<p><strong>输入:</strong><span class="example-io">s = "10101", k = 1</span></p>
|
||||
|
||||
<p><strong>输出:</strong><span class="example-io">12</span></p>
|
||||
|
||||
<p><strong>解释:</strong></p>
|
||||
|
||||
<p><code>s</code> 的所有子字符串中,除了 <code>"1010"</code>、<code>"10101"</code> 和 <code>"0101"</code> 外,其余子字符串都满足 k 约束。</p>
|
||||
</div>
|
||||
|
||||
<p><strong class="example">示例 2:</strong></p>
|
||||
|
||||
<div class="example-block">
|
||||
<p><strong>输入:</strong><span class="example-io">s = "1010101", k = 2</span></p>
|
||||
|
||||
<p><strong>输出:</strong><span class="example-io">25</span></p>
|
||||
|
||||
<p><strong>解释:</strong></p>
|
||||
|
||||
<p><code>s</code> 的所有子字符串中,除了长度大于 5 的子字符串外,其余子字符串都满足 k 约束。</p>
|
||||
</div>
|
||||
|
||||
<p><strong class="example">示例 3:</strong></p>
|
||||
|
||||
<div class="example-block">
|
||||
<p><strong>输入:</strong><span class="example-io">s = "11111", k = 1</span></p>
|
||||
|
||||
<p><strong>输出:</strong><span class="example-io">15</span></p>
|
||||
|
||||
<p><strong>解释:</strong></p>
|
||||
|
||||
<p><code>s</code> 的所有子字符串都满足 k 约束。</p>
|
||||
</div>
|
||||
|
||||
<p> </p>
|
||||
|
||||
<p><strong>提示:</strong></p>
|
||||
|
||||
<ul>
|
||||
<li><code>1 <= s.length <= 50</code></li>
|
||||
<li><code>1 <= k <= s.length</code></li>
|
||||
<li><code>s[i]</code> 是 <code>'0'</code> 或 <code>'1'</code>。</li>
|
||||
</ul>
|
@@ -0,0 +1,52 @@
|
||||
<p>给你一个 <strong>二进制</strong> 字符串 <code>s</code> 和一个整数 <code>k</code>。</p>
|
||||
|
||||
<p>另给你一个二维整数数组 <code>queries</code> ,其中 <code>queries[i] = [l<sub>i</sub>, r<sub>i</sub>]</code> 。</p>
|
||||
|
||||
<p>如果一个 <strong>二进制字符串</strong> 满足以下任一条件,则认为该字符串满足 <strong>k 约束</strong>:</p>
|
||||
|
||||
<ul>
|
||||
<li>字符串中 <code>0</code> 的数量最多为 <code>k</code>。</li>
|
||||
<li>字符串中 <code>1</code> 的数量最多为 <code>k</code>。</li>
|
||||
</ul>
|
||||
|
||||
<p>返回一个整数数组 <code>answer</code> ,其中 <code>answer[i]</code> 表示 <code>s[l<sub>i</sub>..r<sub>i</sub>]</code> 中满足 <strong>k 约束</strong> 的 <span data-keyword="substring-nonempty">子字符串</span> 的数量。</p>
|
||||
|
||||
<p> </p>
|
||||
|
||||
<p><strong class="example">示例 1:</strong></p>
|
||||
|
||||
<div class="example-block">
|
||||
<p><strong>输入:</strong><span class="example-io">s = "0001111", k = 2, queries = [[0,6]]</span></p>
|
||||
|
||||
<p><strong>输出:</strong><span class="example-io">[26]</span></p>
|
||||
|
||||
<p><strong>解释:</strong></p>
|
||||
|
||||
<p>对于查询 <code>[0, 6]</code>, <code>s[0..6] = "0001111"</code> 的所有子字符串中,除 <code>s[0..5] = "000111"</code> 和 <code>s[0..6] = "0001111"</code> 外,其余子字符串都满足 k 约束。</p>
|
||||
</div>
|
||||
|
||||
<p><strong class="example">示例 2:</strong></p>
|
||||
|
||||
<div class="example-block">
|
||||
<p><strong>输入:</strong><span class="example-io">s = "010101", k = 1, queries = [[0,5],[1,4],[2,3]]</span></p>
|
||||
|
||||
<p><strong>输出:</strong><span class="example-io">[15,9,3]</span></p>
|
||||
|
||||
<p><strong>解释:</strong></p>
|
||||
|
||||
<p><code>s</code> 的所有子字符串中,长度大于 3 的子字符串都不满足 k 约束。</p>
|
||||
</div>
|
||||
|
||||
<p> </p>
|
||||
|
||||
<p><strong>提示:</strong></p>
|
||||
|
||||
<ul>
|
||||
<li><code>1 <= s.length <= 10<sup>5</sup></code></li>
|
||||
<li><code>s[i]</code> 是 <code>'0'</code> 或 <code>'1'</code></li>
|
||||
<li><code>1 <= k <= s.length</code></li>
|
||||
<li><code>1 <= queries.length <= 10<sup>5</sup></code></li>
|
||||
<li><code>queries[i] == [l<sub>i</sub>, r<sub>i</sub>]</code></li>
|
||||
<li><code>0 <= l<sub>i</sub> <= r<sub>i</sub> < s.length</code></li>
|
||||
<li>所有查询互不相同</li>
|
||||
</ul>
|
@@ -0,0 +1,63 @@
|
||||
<p>给你一个正整数数组 <code>nums</code> 。</p>
|
||||
|
||||
<p>如果我们执行以下操作 <strong>至多一次</strong> 可以让两个整数 <code>x</code> 和 <code>y</code> 相等,那么我们称这个数对是 <strong>近似相等</strong> 的:</p>
|
||||
|
||||
<ul>
|
||||
<li>选择 <code>x</code> <strong>或者</strong> <code>y</code> 之一,将这个数字中的两个数位交换。</li>
|
||||
</ul>
|
||||
|
||||
<p>请你返回 <code>nums</code> 中,下标 <code>i</code> 和 <code>j</code> 满足 <code>i < j</code> 且 <code>nums[i]</code> 和 <code>nums[j]</code> <strong>近似相等</strong> 的数对数目。</p>
|
||||
|
||||
<p><b>注意</b> ,执行操作后一个整数可以有前导 0 。</p>
|
||||
|
||||
<p> </p>
|
||||
|
||||
<p><strong class="example">示例 1:</strong></p>
|
||||
|
||||
<div class="example-block">
|
||||
<p><span class="example-io"><b>输入:</b>nums = [3,12,30,17,21]</span></p>
|
||||
|
||||
<p><span class="example-io"><b>输出:</b>2</span></p>
|
||||
|
||||
<p><strong>解释:</strong></p>
|
||||
|
||||
<p>近似相等数对包括:</p>
|
||||
|
||||
<ul>
|
||||
<li>3 和 30 。交换 30 中的数位 3 和 0 ,得到 3 。</li>
|
||||
<li>12 和 21 。交换12 中的数位 1 和 2 ,得到 21 。</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<p><strong class="example">示例 2:</strong></p>
|
||||
|
||||
<div class="example-block">
|
||||
<p><span class="example-io"><b>输入:</b>nums = [1,1,1,1,1]</span></p>
|
||||
|
||||
<p><span class="example-io"><b>输出:</b>10</span></p>
|
||||
|
||||
<p><strong>解释:</strong></p>
|
||||
|
||||
<p>数组中的任意两个元素都是近似相等的。</p>
|
||||
</div>
|
||||
|
||||
<p><strong class="example">示例 3:</strong></p>
|
||||
|
||||
<div class="example-block">
|
||||
<p><span class="example-io"><b>输入:</b>nums = [123,231]</span></p>
|
||||
|
||||
<p><span class="example-io"><b>输出:</b>0</span></p>
|
||||
|
||||
<p><strong>解释:</strong></p>
|
||||
|
||||
<p>我们无法通过交换 123 或者 321 中的两个数位得到另一个数。</p>
|
||||
</div>
|
||||
|
||||
<p> </p>
|
||||
|
||||
<p><strong>提示:</strong></p>
|
||||
|
||||
<ul>
|
||||
<li><code>2 <= nums.length <= 100</code></li>
|
||||
<li><code>1 <= nums[i] <= 10<sup>6</sup></code></li>
|
||||
</ul>
|
@@ -0,0 +1,61 @@
|
||||
<p><strong>注意:</strong>在这个问题中,操作次数增加为至多 <strong>两次</strong> 。</p>
|
||||
|
||||
<p>给你一个正整数数组 <code>nums</code> 。</p>
|
||||
|
||||
<p>如果我们执行以下操作 <strong>至多<u>两次</u></strong> 可以让两个整数 <code>x</code> 和 <code>y</code> 相等,那么我们称这个数对是 <strong>近似相等</strong> 的:</p>
|
||||
|
||||
<ul>
|
||||
<li>选择 <code>x</code> <strong>或者</strong> <code>y</code> 之一,将这个数字中的两个数位交换。</li>
|
||||
</ul>
|
||||
|
||||
<p>请你返回 <code>nums</code> 中,下标 <code>i</code> 和 <code>j</code> 满足 <code>i < j</code> 且 <code>nums[i]</code> 和 <code>nums[j]</code> <strong>近似相等</strong> 的数对数目。</p>
|
||||
|
||||
<p><b>注意</b> ,执行操作后得到的整数可以有前导 0 。</p>
|
||||
|
||||
<p> </p>
|
||||
|
||||
<p><strong class="example">示例 1:</strong></p>
|
||||
|
||||
<div class="example-block">
|
||||
<p><span class="example-io"><b>输入:</b>nums = [1023,2310,2130,213]</span></p>
|
||||
|
||||
<p><span class="example-io"><b>输出:</b>4</span></p>
|
||||
|
||||
<p><strong>解释:</strong></p>
|
||||
|
||||
<p>近似相等数对包括:</p>
|
||||
|
||||
<ul>
|
||||
<li>1023 和 2310 。交换 1023 中数位 1 和 2 ,然后交换数位 0 和 3 ,得到 2310 。</li>
|
||||
<li>1023 和 213 。交换 1023 中数位 1 和 0 ,然后交换数位 1 和 2 ,得到 0213 ,也就是 213 。</li>
|
||||
<li>2310 和 213 。交换 2310 中数位 2 和 0 ,然后交换数位 3 和 2 ,得到 0213 ,也就是 213 。</li>
|
||||
<li>2310 和 2130 。交换 2310 中数位 3 和 1 ,得到 2130 。</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<p><strong class="example">示例 2:</strong></p>
|
||||
|
||||
<div class="example-block">
|
||||
<p><span class="example-io"><b>输入:</b>nums = [1,10,100]</span></p>
|
||||
|
||||
<p><span class="example-io"><b>输出:</b>3</span></p>
|
||||
|
||||
<p><strong>解释:</strong></p>
|
||||
|
||||
<p>近似相等数对包括:</p>
|
||||
|
||||
<ul>
|
||||
<li>1 和 10 。交换 10 中数位 1 和 0 ,得到 01 ,也就是 1 。</li>
|
||||
<li>1 和 100 。交换 100 中数位 1 和从左往右的第二个 0 ,得到 001 ,也就是 1 。</li>
|
||||
<li>10 和 100 。交换 100 中数位 1 和从左往右的第一个 0 ,得到 010 ,也就是 10 。</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<p> </p>
|
||||
|
||||
<p><strong>提示:</strong></p>
|
||||
|
||||
<ul>
|
||||
<li><code>2 <= nums.length <= 5000</code></li>
|
||||
<li><code>1 <= nums[i] < 10<sup>7</sup></code></li>
|
||||
</ul>
|
@@ -0,0 +1,47 @@
|
||||
<p>来自未来的体育科学家给你两个整数数组 <code>energyDrinkA</code> 和 <code>energyDrinkB</code>,数组长度都等于 <code>n</code>。这两个数组分别代表 A、B 两种不同能量饮料每小时所能提供的强化能量。</p>
|
||||
|
||||
<p>你需要每小时饮用一种能量饮料来 <strong>最大化 </strong>你的总强化能量。然而,如果从一种能量饮料切换到另一种,你需要等待一小时来梳理身体的能量体系(在那个小时里你将不会获得任何强化能量)。</p>
|
||||
|
||||
<p>返回在接下来的 <code>n</code> 小时内你能获得的<strong> 最大 </strong>总强化能量。</p>
|
||||
|
||||
<p><strong>注意 </strong>你可以选择从饮用任意一种能量饮料开始。</p>
|
||||
|
||||
<p> </p>
|
||||
|
||||
<p><strong class="example">示例 1:</strong></p>
|
||||
|
||||
<div class="example-block">
|
||||
<p><strong>输入:</strong>energyDrinkA<span class="example-io"> = [1,3,1], </span>energyDrinkB<span class="example-io"> = [3,1,1]</span></p>
|
||||
|
||||
<p><strong>输出:</strong><span class="example-io">5</span></p>
|
||||
|
||||
<p><strong>解释:</strong></p>
|
||||
|
||||
<p>要想获得 5 点强化能量,需要选择只饮用能量饮料 A(或者只饮用 B)。</p>
|
||||
</div>
|
||||
|
||||
<p><strong class="example">示例 2:</strong></p>
|
||||
|
||||
<div class="example-block">
|
||||
<p><strong>输入:</strong>energyDrinkA<span class="example-io"> = [4,1,1], </span>energyDrinkB<span class="example-io"> = [1,1,3]</span></p>
|
||||
|
||||
<p><strong>输出:</strong><span class="example-io">7</span></p>
|
||||
|
||||
<p><strong>解释:</strong></p>
|
||||
|
||||
<ul>
|
||||
<li>第一个小时饮用能量饮料 A。</li>
|
||||
<li>切换到能量饮料 B ,在第二个小时无法获得强化能量。</li>
|
||||
<li>第三个小时饮用能量饮料 B ,并获得强化能量。</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<p> </p>
|
||||
|
||||
<p><strong>提示:</strong></p>
|
||||
|
||||
<ul>
|
||||
<li><code>n == energyDrinkA.length == energyDrinkB.length</code></li>
|
||||
<li><code>3 <= n <= 10<sup>5</sup></code></li>
|
||||
<li><code>1 <= energyDrinkA[i], energyDrinkB[i] <= 10<sup>5</sup></code></li>
|
||||
</ul>
|
@@ -0,0 +1,60 @@
|
||||
<p>给你一个长度为 <code>n</code> 的整数数组 <code>nums</code> 和一个正整数 <code>k</code> 。</p>
|
||||
|
||||
<p>一个数组的 <strong>能量值</strong> 定义为:</p>
|
||||
|
||||
<ul>
|
||||
<li>如果 <strong>所有</strong> 元素都是依次 <strong>连续</strong> 且 <strong>上升</strong> 的,那么能量值为 <strong>最大</strong> 的元素。</li>
|
||||
<li>否则为 -1 。</li>
|
||||
</ul>
|
||||
|
||||
<p>你需要求出 <code>nums</code> 中所有长度为 <code>k</code> 的 <span data-keyword="subarray-nonempty">子数组</span> 的能量值。</p>
|
||||
|
||||
<p>请你返回一个长度为 <code>n - k + 1</code> 的整数数组 <code>results</code> ,其中 <code>results[i]</code> 是子数组 <code>nums[i..(i + k - 1)]</code> 的能量值。</p>
|
||||
|
||||
<p> </p>
|
||||
|
||||
<p><strong class="example">示例 1:</strong></p>
|
||||
|
||||
<div class="example-block">
|
||||
<p><span class="example-io"><b>输入:</b>nums = [1,2,3,4,3,2,5], k = 3</span></p>
|
||||
|
||||
<p><b>输出:</b>[3,4,-1,-1,-1]</p>
|
||||
|
||||
<p><strong>解释:</strong></p>
|
||||
|
||||
<p><code>nums</code> 中总共有 5 个长度为 3 的子数组:</p>
|
||||
|
||||
<ul>
|
||||
<li><code>[1, 2, 3]</code> 中最大元素为 3 。</li>
|
||||
<li><code>[2, 3, 4]</code> 中最大元素为 4 。</li>
|
||||
<li><code>[3, 4, 3]</code> 中元素 <strong>不是</strong> 连续的。</li>
|
||||
<li><code>[4, 3, 2]</code> 中元素 <b>不是</b> 上升的。</li>
|
||||
<li><code>[3, 2, 5]</code> 中元素 <strong>不是</strong> 连续的。</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<p><strong class="example">示例 2:</strong></p>
|
||||
|
||||
<div class="example-block">
|
||||
<p><span class="example-io"><b>输入:</b>nums = [2,2,2,2,2], k = 4</span></p>
|
||||
|
||||
<p><span class="example-io"><b>输出:</b>[-1,-1]</span></p>
|
||||
</div>
|
||||
|
||||
<p><strong class="example">示例 3:</strong></p>
|
||||
|
||||
<div class="example-block">
|
||||
<p><span class="example-io"><b>输入:</b>nums = [3,2,3,2,3,2], k = 2</span></p>
|
||||
|
||||
<p><span class="example-io"><b>输出:</b>[-1,3,-1,3,-1]</span></p>
|
||||
</div>
|
||||
|
||||
<p> </p>
|
||||
|
||||
<p><strong>提示:</strong></p>
|
||||
|
||||
<ul>
|
||||
<li><code>1 <= n == nums.length <= 500</code></li>
|
||||
<li><code>1 <= nums[i] <= 10<sup>5</sup></code></li>
|
||||
<li><code>1 <= k <= n</code></li>
|
||||
</ul>
|
@@ -0,0 +1,60 @@
|
||||
<p>给你一个长度为 <code>n</code> 的整数数组 <code>nums</code> 和一个正整数 <code>k</code> 。</p>
|
||||
|
||||
<p>一个数组的 <strong>能量值</strong> 定义为:</p>
|
||||
|
||||
<ul>
|
||||
<li>如果 <strong>所有</strong> 元素都是依次 <strong>连续</strong> 且 <strong>上升</strong> 的,那么能量值为 <strong>最大</strong> 的元素。</li>
|
||||
<li>否则为 -1 。</li>
|
||||
</ul>
|
||||
|
||||
<p>你需要求出 <code>nums</code> 中所有长度为 <code>k</code> 的 <span data-keyword="subarray-nonempty">子数组</span> 的能量值。</p>
|
||||
|
||||
<p>请你返回一个长度为 <code>n - k + 1</code> 的整数数组 <code>results</code> ,其中 <code>results[i]</code> 是子数组 <code>nums[i..(i + k - 1)]</code> 的能量值。</p>
|
||||
|
||||
<p> </p>
|
||||
|
||||
<p><strong class="example">示例 1:</strong></p>
|
||||
|
||||
<div class="example-block">
|
||||
<p><span class="example-io"><b>输入:</b>nums = [1,2,3,4,3,2,5], k = 3</span></p>
|
||||
|
||||
<p><b>输出:</b>[3,4,-1,-1,-1]</p>
|
||||
|
||||
<p><strong>解释:</strong></p>
|
||||
|
||||
<p><code>nums</code> 中总共有 5 个长度为 3 的子数组:</p>
|
||||
|
||||
<ul>
|
||||
<li><code>[1, 2, 3]</code> 中最大元素为 3 。</li>
|
||||
<li><code>[2, 3, 4]</code> 中最大元素为 4 。</li>
|
||||
<li><code>[3, 4, 3]</code> 中元素 <strong>不是</strong> 连续的。</li>
|
||||
<li><code>[4, 3, 2]</code> 中元素 <b>不是</b> 上升的。</li>
|
||||
<li><code>[3, 2, 5]</code> 中元素 <strong>不是</strong> 连续的。</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<p><strong class="example">示例 2:</strong></p>
|
||||
|
||||
<div class="example-block">
|
||||
<p><span class="example-io"><b>输入:</b>nums = [2,2,2,2,2], k = 4</span></p>
|
||||
|
||||
<p><span class="example-io"><b>输出:</b>[-1,-1]</span></p>
|
||||
</div>
|
||||
|
||||
<p><strong class="example">示例 3:</strong></p>
|
||||
|
||||
<div class="example-block">
|
||||
<p><span class="example-io"><b>输入:</b>nums = [3,2,3,2,3,2], k = 2</span></p>
|
||||
|
||||
<p><span class="example-io"><b>输出:</b>[-1,3,-1,3,-1]</span></p>
|
||||
</div>
|
||||
|
||||
<p> </p>
|
||||
|
||||
<p><strong>提示:</strong></p>
|
||||
|
||||
<ul>
|
||||
<li><code>1 <= n == nums.length <= 10<sup>5</sup></code></li>
|
||||
<li><code>1 <= nums[i] <= 10<sup>6</sup></code></li>
|
||||
<li><code>1 <= k <= n</code></li>
|
||||
</ul>
|
Reference in New Issue
Block a user