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,67 @@
|
||||
<p>给你一个大小为 <code>m x n</code> 的二维矩形 <code>grid</code> 。每次 <strong>操作</strong> 中,你可以将 <strong>任一</strong> 格子的值修改为 <strong>任意</strong> 非负整数。完成所有操作后,你需要确保每个格子 <code>grid[i][j]</code> 的值满足:</p>
|
||||
|
||||
<ul>
|
||||
<li>如果下面相邻格子存在的话,它们的值相等,也就是 <code>grid[i][j] == grid[i + 1][j]</code>(如果存在)。</li>
|
||||
<li>如果右边相邻格子存在的话,它们的值不相等,也就是 <code>grid[i][j] != grid[i][j + 1]</code>(如果存在)。</li>
|
||||
</ul>
|
||||
|
||||
<p>请你返回需要的 <strong>最少</strong> 操作数目。</p>
|
||||
|
||||
<p> </p>
|
||||
|
||||
<p><strong class="example">示例 1:</strong></p>
|
||||
|
||||
<div class="example-block">
|
||||
<p><span class="example-io"><b>输入:</b>grid = [[1,0,2],[1,0,2]]</span></p>
|
||||
|
||||
<p><b>输出:</b>0</p>
|
||||
|
||||
<p><b>解释:</b></p>
|
||||
|
||||
<p><strong><img alt="" src="https://assets.leetcode.com/uploads/2024/04/15/examplechanged.png" style="width: 254px; height: 186px;padding: 10px; background: #fff; border-radius: .5rem;" /></strong></p>
|
||||
|
||||
<p>矩阵中所有格子已经满足要求。</p>
|
||||
</div>
|
||||
|
||||
<p><strong class="example">示例 2:</strong></p>
|
||||
|
||||
<div class="example-block">
|
||||
<p><span class="example-io"><b>输入:</b>grid = [[1,1,1],[0,0,0]]</span></p>
|
||||
|
||||
<p><b>输出:</b>3</p>
|
||||
|
||||
<p><strong>解释:</strong></p>
|
||||
|
||||
<p><strong><img alt="" src="https://assets.leetcode.com/uploads/2024/03/27/example21.png" style="width: 254px; height: 186px;padding: 10px; background: #fff; border-radius: .5rem;" /></strong></p>
|
||||
|
||||
<p>将矩阵变成 <code>[[1,0,1],[1,0,1]]</code> ,它满足所有要求,需要 3 次操作:</p>
|
||||
|
||||
<ul>
|
||||
<li>将 <code>grid[1][0]</code> 变为 1 。</li>
|
||||
<li>将 <code>grid[0][1]</code> 变为 0 。</li>
|
||||
<li>将 <code>grid[1][2]</code> 变为 1 。</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<p><strong class="example">示例 3:</strong></p>
|
||||
|
||||
<div class="example-block">
|
||||
<p><span class="example-io"><b>输入:</b>grid = [[1],[2],[3]]</span></p>
|
||||
|
||||
<p><b>输出:</b>2</p>
|
||||
|
||||
<p><strong>解释:</strong></p>
|
||||
|
||||
<p><img alt="" src="https://assets.leetcode.com/uploads/2024/03/31/changed.png" style="width: 86px; height: 277px;padding: 10px; background: #fff; border-radius: .5rem;" /></p>
|
||||
|
||||
<p>这个矩阵只有一列,我们可以通过 2 次操作将所有格子里的值变为 1 。</p>
|
||||
</div>
|
||||
|
||||
<p> </p>
|
||||
|
||||
<p><strong>提示:</strong></p>
|
||||
|
||||
<ul>
|
||||
<li><code>1 <= n, m <= 1000</code></li>
|
||||
<li><code>0 <= grid[i][j] <= 9</code></li>
|
||||
</ul>
|
@@ -0,0 +1,73 @@
|
||||
<p>给你两个数组 <code>nums</code> 和 <code>andValues</code>,长度分别为 <code>n</code> 和 <code>m</code>。</p>
|
||||
|
||||
<p>数组的 <strong>值 </strong>等于该数组的 <strong>最后一个 </strong>元素。</p>
|
||||
|
||||
<p>你需要将 <code>nums</code> 划分为 <code>m</code> 个 <strong>不相交的连续 </strong>子数组,对于第 <code>i<sup>th</sup></code> 个子数组 <code>[l<sub>i</sub>, r<sub>i</sub>]</code>,子数组元素的按位<code>AND</code>运算结果等于 <code>andValues[i]</code>,换句话说,对所有的 <code>1 <= i <= m</code>,<code>nums[l<sub>i</sub>] & nums[l<sub>i</sub> + 1] & ... & nums[r<sub>i</sub>] == andValues[i]</code> ,其中 <code>&</code> 表示按位<code>AND</code>运算符。</p>
|
||||
|
||||
<p>返回将 <code>nums</code> 划分为 <code>m</code> 个子数组所能得到的可能的 <strong>最小 </strong>子数组 <strong>值</strong> 之和。如果无法完成这样的划分,则返回 <code>-1</code> 。</p>
|
||||
|
||||
<p> </p>
|
||||
|
||||
<p><strong class="example">示例 1:</strong></p>
|
||||
|
||||
<div class="example-block">
|
||||
<p><strong>输入:</strong> <span class="example-io">nums = [1,4,3,3,2], andValues = [0,3,3,2]</span></p>
|
||||
|
||||
<p><strong>输出:</strong> <span class="example-io">12</span></p>
|
||||
|
||||
<p><strong>解释:</strong></p>
|
||||
|
||||
<p>唯一可能的划分方法为:</p>
|
||||
|
||||
<ol>
|
||||
<li><code>[1,4]</code> 因为 <code>1 & 4 == 0</code></li>
|
||||
<li><code>[3]</code> 因为单元素子数组的按位 <code>AND</code> 结果就是该元素本身</li>
|
||||
<li><code>[3]</code> 因为单元素子数组的按位 <code>AND</code> 结果就是该元素本身</li>
|
||||
<li><code>[2]</code> 因为单元素子数组的按位 <code>AND</code> 结果就是该元素本身</li>
|
||||
</ol>
|
||||
|
||||
<p>这些子数组的值之和为 <code>4 + 3 + 3 + 2 = 12</code></p>
|
||||
</div>
|
||||
|
||||
<p><strong class="example">示例 2:</strong></p>
|
||||
|
||||
<div class="example-block">
|
||||
<p><strong>输入:</strong> <span class="example-io">nums = [2,3,5,7,7,7,5], andValues = [0,7,5]</span></p>
|
||||
|
||||
<p><strong>输出:</strong> <span class="example-io">17</span></p>
|
||||
|
||||
<p><strong>解释:</strong></p>
|
||||
|
||||
<p>划分 <code>nums</code> 的三种方式为:</p>
|
||||
|
||||
<ol>
|
||||
<li><code>[[2,3,5],[7,7,7],[5]]</code> 其中子数组的值之和为 <code>5 + 7 + 5 = 17</code></li>
|
||||
<li><code>[[2,3,5,7],[7,7],[5]]</code> 其中子数组的值之和为 <code>7 + 7 + 5 = 19</code></li>
|
||||
<li><code>[[2,3,5,7,7],[7],[5]]</code> 其中子数组的值之和为 <code>7 + 7 + 5 = 19</code></li>
|
||||
</ol>
|
||||
|
||||
<p>子数组值之和的最小可能值为 <code>17</code></p>
|
||||
</div>
|
||||
|
||||
<p><strong class="example">示例 3:</strong></p>
|
||||
|
||||
<div class="example-block">
|
||||
<p><strong>输入:</strong> <span class="example-io">nums = [1,2,3,4], andValues = [2]</span></p>
|
||||
|
||||
<p><strong>输出:</strong> <span class="example-io">-1</span></p>
|
||||
|
||||
<p><strong>解释:</strong></p>
|
||||
|
||||
<p>整个数组 <code>nums</code> 的按位 <code>AND</code> 结果为 <code>0</code>。由于无法将 <code>nums</code> 划分为单个子数组使得元素的按位 <code>AND</code> 结果为 <code>2</code>,因此返回 <code>-1</code>。</p>
|
||||
</div>
|
||||
|
||||
<p> </p>
|
||||
|
||||
<p><strong>提示:</strong></p>
|
||||
|
||||
<ul>
|
||||
<li><code>1 <= n == nums.length <= 10<sup>4</sup></code></li>
|
||||
<li><code>1 <= m == andValues.length <= min(n, 10)</code></li>
|
||||
<li><code>1 <= nums[i] < 10<sup>5</sup></code></li>
|
||||
<li><code>0 <= andValues[j] < 10<sup>5</sup></code></li>
|
||||
</ul>
|
@@ -0,0 +1,69 @@
|
||||
<p>给你一个整数数组 <code>coins</code> 表示不同面额的硬币,另给你一个整数 <code>k</code> 。</p>
|
||||
|
||||
<p>你有无限量的每种面额的硬币。但是,你<strong> 不能 </strong>组合使用不同面额的硬币。</p>
|
||||
|
||||
<p>返回使用这些硬币能制造的<strong> 第 </strong><code>k<sup>th</sup></code><strong> 小</strong> 金额。</p>
|
||||
|
||||
<p> </p>
|
||||
|
||||
<p><strong class="example">示例 1:</strong></p>
|
||||
|
||||
<div class="example-block" style="
|
||||
border-color: var(--border-tertiary);
|
||||
border-left-width: 2px;
|
||||
color: var(--text-secondary);
|
||||
font-size: .875rem;
|
||||
margin-bottom: 1rem;
|
||||
margin-top: 1rem;
|
||||
overflow: visible;
|
||||
padding-left: 1rem;">
|
||||
<p><strong>输入:</strong> <span class="example-io" style="
|
||||
font-family: Menlo,sans-serif;
|
||||
font-size: 0.85rem;">coins = [3,6,9], k = 3</span></p>
|
||||
|
||||
<p><strong>输出:</strong> <span class="example-io" style="
|
||||
font-family: Menlo,sans-serif;
|
||||
font-size: 0.85rem;">9</span></p>
|
||||
|
||||
<p><strong>解释:</strong>给定的硬币可以制造以下金额:<br />
|
||||
3元硬币产生3的倍数:3, 6, 9, 12, 15等。<br />
|
||||
6元硬币产生6的倍数:6, 12, 18, 24等。<br />
|
||||
9元硬币产生9的倍数:9, 18, 27, 36等。<br />
|
||||
所有硬币合起来可以产生:3, 6, <u><strong>9</strong></u>, 12, 15等。</p>
|
||||
</div>
|
||||
|
||||
<p><strong class="example">示例 2:</strong></p>
|
||||
|
||||
<div class="example-block" style="
|
||||
border-color: var(--border-tertiary);
|
||||
border-left-width: 2px;
|
||||
color: var(--text-secondary);
|
||||
font-size: .875rem;
|
||||
margin-bottom: 1rem;
|
||||
margin-top: 1rem;
|
||||
overflow: visible;
|
||||
padding-left: 1rem;">
|
||||
<p><strong>输入:</strong><span class="example-io" style="
|
||||
font-family: Menlo,sans-serif;
|
||||
font-size: 0.85rem;">coins = [5,2], k = 7</span></p>
|
||||
|
||||
<p><strong>输出:</strong><span class="example-io" style="
|
||||
font-family: Menlo,sans-serif;
|
||||
font-size: 0.85rem;">12</span></p>
|
||||
|
||||
<p><strong>解释:</strong>给定的硬币可以制造以下金额:<br />
|
||||
5元硬币产生5的倍数:5, 10, 15, 20等。<br />
|
||||
2元硬币产生2的倍数:2, 4, 6, 8, 10, 12等。<br />
|
||||
所有硬币合起来可以产生:2, 4, 5, 6, 8, 10, <u><strong>12</strong></u>, 14, 15等。</p>
|
||||
</div>
|
||||
|
||||
<p> </p>
|
||||
|
||||
<p><strong>提示:</strong></p>
|
||||
|
||||
<ul>
|
||||
<li><code>1 <= coins.length <= 15</code></li>
|
||||
<li><code>1 <= coins[i] <= 25</code></li>
|
||||
<li><code>1 <= k <= 2 * 10<sup>9</sup></code></li>
|
||||
<li><code>coins</code> 包含两两不同的整数。</li>
|
||||
</ul>
|
@@ -0,0 +1,38 @@
|
||||
<p>给你一个字符串 <code>s</code> 。一个字符串的 <strong>分数</strong> 定义为相邻字符 <strong>ASCII</strong> 码差值绝对值的和。</p>
|
||||
|
||||
<p>请你返回 <code>s</code> 的 <strong>分数</strong> 。</p>
|
||||
|
||||
<p> </p>
|
||||
|
||||
<p><strong class="example">示例 1:</strong></p>
|
||||
|
||||
<div class="example-block">
|
||||
<p><span class="example-io"><b>输入:</b>s = "hello"</span></p>
|
||||
|
||||
<p><span class="example-io"><b>输出:</b>13</span></p>
|
||||
|
||||
<p><strong>解释:</strong></p>
|
||||
|
||||
<p><code>s</code> 中字符的 <strong>ASCII </strong>码分别为:<code>'h' = 104</code> ,<code>'e' = 101</code> ,<code>'l' = 108</code> ,<code>'o' = 111</code> 。所以 <code>s</code> 的分数为 <code>|104 - 101| + |101 - 108| + |108 - 108| + |108 - 111| = 3 + 7 + 0 + 3 = 13</code> 。</p>
|
||||
</div>
|
||||
|
||||
<p><strong class="example">示例 2:</strong></p>
|
||||
|
||||
<div class="example-block">
|
||||
<p><span class="example-io"><b>输入:</b>s = "zaz"</span></p>
|
||||
|
||||
<p><span class="example-io"><b>输出:</b>50</span></p>
|
||||
|
||||
<p><strong>解释:</strong></p>
|
||||
|
||||
<p><code>s</code> 中字符的 <strong>ASCII </strong>码分别为:<code>'z' = 122</code> ,<code>'a' = 97</code> 。所以 <code>s</code> 的分数为 <code>|122 - 97| + |97 - 122| = 25 + 25 = 50</code> 。</p>
|
||||
</div>
|
||||
|
||||
<p> </p>
|
||||
|
||||
<p><strong>提示:</strong></p>
|
||||
|
||||
<ul>
|
||||
<li><code>2 <= s.length <= 100</code></li>
|
||||
<li><code>s</code> 只包含小写英文字母。</li>
|
||||
</ul>
|
@@ -0,0 +1,73 @@
|
||||
<p>给你两个长度相等的数组 <code>nums1</code> 和 <code>nums2</code>。</p>
|
||||
|
||||
<p>数组 <code>nums1</code> 中的每个元素都与变量 <code>x</code> 所表示的整数相加。如果 <code>x</code> 为负数,则表现为元素值的减少。</p>
|
||||
|
||||
<p>在与 <code>x</code> 相加后,<code>nums1</code> 和 <code>nums2</code> <strong>相等</strong> 。当两个数组中包含相同的整数,并且这些整数出现的频次相同时,两个数组 <strong>相等</strong> 。</p>
|
||||
|
||||
<p>返回整数 <code>x</code> 。</p>
|
||||
|
||||
<p> </p>
|
||||
|
||||
<p><strong class="example">示例 1:</strong></p>
|
||||
|
||||
<div class="example-block">
|
||||
<p><strong>输入:</strong><span class="example-io" style="
|
||||
font-family: Menlo,sans-serif;
|
||||
font-size: 0.85rem;
|
||||
">nums1 = [2,6,4], nums2 = [9,7,5]</span></p>
|
||||
|
||||
<p><strong>输出:</strong><span class="example-io" style="
|
||||
font-family: Menlo,sans-serif;
|
||||
font-size: 0.85rem;
|
||||
">3</span></p>
|
||||
|
||||
<p><strong>解释:</strong></p>
|
||||
|
||||
<p>与 3 相加后,<code>nums1</code> 和 <code>nums2</code> 相等。</p>
|
||||
</div>
|
||||
|
||||
<p><strong class="example">示例 2:</strong></p>
|
||||
|
||||
<div class="example-block">
|
||||
<p><strong>输入:</strong><span class="example-io" style="
|
||||
font-family: Menlo,sans-serif;
|
||||
font-size: 0.85rem;
|
||||
">nums1 = [10], nums2 = [5]</span></p>
|
||||
|
||||
<p><strong>输出:</strong><span class="example-io" style="
|
||||
font-family: Menlo,sans-serif;
|
||||
font-size: 0.85rem;
|
||||
">-5</span></p>
|
||||
|
||||
<p><strong>解释:</strong></p>
|
||||
|
||||
<p>与 <code>-5</code> 相加后,<code>nums1</code> 和 <code>nums2</code> 相等。</p>
|
||||
</div>
|
||||
|
||||
<p><strong class="example">示例 3:</strong></p>
|
||||
|
||||
<div class="example-block">
|
||||
<p><strong>输入:</strong><span class="example-io" style="
|
||||
font-family: Menlo,sans-serif;
|
||||
font-size: 0.85rem;
|
||||
">nums1 = [1,1,1,1], nums2 = [1,1,1,1]</span></p>
|
||||
|
||||
<p><strong>输出:</strong><span class="example-io" style="
|
||||
font-family: Menlo,sans-serif;
|
||||
font-size: 0.85rem;
|
||||
">0</span></p>
|
||||
|
||||
<p><strong>解释:</strong></p>
|
||||
|
||||
<p>与 0 相加后,<code>nums1</code> 和 <code>nums2</code> 相等。</p>
|
||||
</div>
|
||||
|
||||
<p> </p>
|
||||
|
||||
<p><strong>提示:</strong></p>
|
||||
|
||||
<ul>
|
||||
<li><code>1 <= nums1.length == nums2.length <= 100</code></li>
|
||||
<li><code>0 <= nums1[i], nums2[i] <= 1000</code></li>
|
||||
<li>测试用例以这样的方式生成:存在一个整数 <code>x</code>,使得 <code>nums1</code> 中的每个元素都与 <code>x</code> 相加后,<code>nums1</code> 与 <code>nums2</code> 相等。</li>
|
||||
</ul>
|
@@ -0,0 +1,56 @@
|
||||
<p>给你两个整数数组 <code>nums1</code> 和 <code>nums2</code>。</p>
|
||||
|
||||
<p>从 <code>nums1</code> 中移除两个元素,并且所有其他元素都与变量 <code>x</code> 所表示的整数相加。如果 <code>x</code> 为负数,则表现为元素值的减少。</p>
|
||||
|
||||
<p>执行上述操作后,<code>nums1</code> 和 <code>nums2</code> <strong>相等</strong> 。当两个数组中包含相同的整数,并且这些整数出现的频次相同时,两个数组 <strong>相等</strong> 。</p>
|
||||
|
||||
<p>返回能够实现数组相等的 <strong>最小 </strong>整数<em> </em><code>x</code><em> </em>。</p>
|
||||
|
||||
<p> </p>
|
||||
|
||||
<p><strong class="example">示例 1:</strong></p>
|
||||
|
||||
<div class="example-block">
|
||||
<p><strong>输入:</strong><span class="example-io" style="
|
||||
font-family: Menlo,sans-serif;
|
||||
font-size: 0.85rem;
|
||||
">nums1 = [4,20,16,12,8], nums2 = [14,18,10]</span></p>
|
||||
|
||||
<p><strong>输出:</strong><span class="example-io" style="
|
||||
font-family: Menlo,sans-serif;
|
||||
font-size: 0.85rem;
|
||||
">-2</span></p>
|
||||
|
||||
<p><strong>解释:</strong></p>
|
||||
|
||||
<p>移除 <code>nums1</code> 中下标为 <code>[0,4]</code> 的两个元素,并且每个元素与 <code>-2</code> 相加后,<code>nums1</code> 变为 <code>[18,14,10]</code> ,与 <code>nums2</code> 相等。</p>
|
||||
</div>
|
||||
|
||||
<p><strong class="example">示例 2:</strong></p>
|
||||
|
||||
<div class="example-block">
|
||||
<p><strong>输入:</strong><span class="example-io" style="
|
||||
font-family: Menlo,sans-serif;
|
||||
font-size: 0.85rem;
|
||||
">nums1 = [3,5,5,3], nums2 = [7,7]</span></p>
|
||||
|
||||
<p><strong>输出:</strong><span class="example-io" style="
|
||||
font-family: Menlo,sans-serif;
|
||||
font-size: 0.85rem;
|
||||
">2</span></p>
|
||||
|
||||
<p><strong>解释:</strong></p>
|
||||
|
||||
<p>移除 <code>nums1</code> 中下标为 <code>[0,3]</code> 的两个元素,并且每个元素与 <code>2</code> 相加后,<code>nums1</code> 变为 <code>[7,7]</code> ,与 <code>nums2</code> 相等。</p>
|
||||
</div>
|
||||
|
||||
<p> </p>
|
||||
|
||||
<p><strong>提示:</strong></p>
|
||||
|
||||
<ul>
|
||||
<li><code>3 <= nums1.length <= 200</code></li>
|
||||
<li><code>nums2.length == nums1.length - 2</code></li>
|
||||
<li><code>0 <= nums1[i], nums2[i] <= 1000</code></li>
|
||||
<li>测试用例以这样的方式生成:存在一个整数 <code>x</code>,<code>nums1</code> 中的每个元素都与 <code>x</code> 相加后,再移除两个元素,<code>nums1</code> 可以与 <code>nums2</code> 相等。</li>
|
||||
</ul>
|
@@ -0,0 +1,56 @@
|
||||
<p>给你一个整数数组 <code>nums</code> 。数组 <code>nums</code> 的<strong> 唯一性数组</strong> 是一个按元素从小到大排序的数组,包含了 <code>nums</code> 的所有<span data-keyword="subarray-nonempty">非空子数组中</span>不同元素的个数。</p>
|
||||
|
||||
<p>换句话说,这是由所有 <code>0 <= i <= j < nums.length</code> 的 <code>distinct(nums[i..j])</code> 组成的递增数组。</p>
|
||||
|
||||
<p>其中,<code>distinct(nums[i..j])</code> 表示从下标 <code>i</code> 到下标 <code>j</code> 的子数组中不同元素的数量。</p>
|
||||
|
||||
<p>返回 <code>nums</code> <strong>唯一性数组 </strong>的 <strong>中位数 </strong>。</p>
|
||||
|
||||
<p><strong>注意</strong>,数组的 <strong>中位数 </strong>定义为有序数组的中间元素。如果有两个中间元素,则取值较小的那个。<!-- notionvc: 7e0f5178-4273-4a82-95ce-3395297921dc --></p>
|
||||
|
||||
<p> </p>
|
||||
|
||||
<p><strong class="example">示例 1:</strong></p>
|
||||
|
||||
<div class="example-block">
|
||||
<p><strong>输入:</strong><span class="example-io">nums = [1,2,3]</span></p>
|
||||
|
||||
<p><strong>输出:</strong><span class="example-io">1</span></p>
|
||||
|
||||
<p><strong>解释:</strong></p>
|
||||
|
||||
<p><code>nums</code> 的唯一性数组为 <code>[distinct(nums[0..0]), distinct(nums[1..1]), distinct(nums[2..2]), distinct(nums[0..1]), distinct(nums[1..2]), distinct(nums[0..2])]</code>,即 <code>[1, 1, 1, 2, 2, 3]</code> 。唯一性数组的中位数为 1 ,因此答案是 1 。</p>
|
||||
</div>
|
||||
|
||||
<p><strong class="example">示例 2:</strong></p>
|
||||
|
||||
<div class="example-block">
|
||||
<p><strong>输入:</strong><span class="example-io">nums = [3,4,3,4,5]</span></p>
|
||||
|
||||
<p><strong>输出:</strong><span class="example-io">2</span></p>
|
||||
|
||||
<p><strong>解释:</strong></p>
|
||||
|
||||
<p><code>nums</code> 的唯一性数组为 <code>[1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3]</code> 。唯一性数组的中位数为 2 ,因此答案是 2 。</p>
|
||||
</div>
|
||||
|
||||
<p><strong class="example">示例 3:</strong></p>
|
||||
|
||||
<div class="example-block">
|
||||
<p><strong>输入:</strong><span class="example-io">nums = [4,3,5,4]</span></p>
|
||||
|
||||
<p><strong>输出:</strong><span class="example-io">2</span></p>
|
||||
|
||||
<p><strong>解释:</strong></p>
|
||||
|
||||
<p><code>nums</code> 的唯一性数组为 <code>[1, 1, 1, 1, 2, 2, 2, 3, 3, 3]</code> 。唯一性数组的中位数为 2 ,因此答案是 2 。</p>
|
||||
</div>
|
||||
|
||||
<p> </p>
|
||||
|
||||
<p><strong>提示:</strong></p>
|
||||
|
||||
<ul>
|
||||
<li><code>1 <= nums.length <= 10<sup>5</sup></code></li>
|
||||
<li><code>1 <= nums[i] <= 10<sup>5</sup></code></li>
|
||||
</ul>
|
@@ -0,0 +1,61 @@
|
||||
<p>给你 3 个正整数 <code>zero</code> ,<code>one</code> 和 <code>limit</code> 。</p>
|
||||
|
||||
<p>一个 <span data-keyword="binary-array">二进制数组</span> <code>arr</code> 如果满足以下条件,那么我们称它是 <strong>稳定的</strong> :</p>
|
||||
|
||||
<ul>
|
||||
<li>0 在 <code>arr</code> 中出现次数 <strong>恰好</strong> 为<strong> </strong><code>zero</code> 。</li>
|
||||
<li>1 在 <code>arr</code> 中出现次数 <strong>恰好</strong> 为 <code>one</code> 。</li>
|
||||
<li><code>arr</code> 中每个长度超过 <code>limit</code> 的 <span data-keyword="subarray-nonempty">子数组</span> 都 <strong>同时</strong> 包含 0 和 1 。</li>
|
||||
</ul>
|
||||
|
||||
<p>请你返回 <strong>稳定</strong> 二进制数组的 <em>总</em> 数目。</p>
|
||||
|
||||
<p>由于答案可能很大,将它对 <code>10<sup>9</sup> + 7</code> <b>取余</b> 后返回。</p>
|
||||
|
||||
<p> </p>
|
||||
|
||||
<p><strong class="example">示例 1:</strong></p>
|
||||
|
||||
<div class="example-block">
|
||||
<p><span class="example-io"><b>输入:</b>zero = 1, one = 1, limit = 2</span></p>
|
||||
|
||||
<p><span class="example-io"><b>输出:</b>2</span></p>
|
||||
|
||||
<p><strong>解释:</strong></p>
|
||||
|
||||
<p>两个稳定的二进制数组为 <code>[1,0]</code> 和 <code>[0,1]</code> ,两个数组都有一个 0 和一个 1 ,且没有子数组长度大于 2 。</p>
|
||||
</div>
|
||||
|
||||
<p><strong class="example">示例 2:</strong></p>
|
||||
|
||||
<div class="example-block">
|
||||
<p><strong>输入:</strong><span class="example-io">zero = 1, one = 2, limit = 1</span></p>
|
||||
|
||||
<p><span class="example-io"><b>输出:</b>1</span></p>
|
||||
|
||||
<p><strong>解释:</strong></p>
|
||||
|
||||
<p>唯一稳定的二进制数组是 <code>[1,0,1]</code> 。</p>
|
||||
|
||||
<p>二进制数组 <code>[1,1,0]</code> 和 <code>[0,1,1]</code> 都有长度为 2 且元素全都相同的子数组,所以它们不稳定。</p>
|
||||
</div>
|
||||
|
||||
<p><strong class="example">示例 3:</strong></p>
|
||||
|
||||
<div class="example-block">
|
||||
<p><span class="example-io"><b>输入:</b>zero = 3, one = 3, limit = 2</span></p>
|
||||
|
||||
<p><span class="example-io"><b>输出:</b>14</span></p>
|
||||
|
||||
<p><strong>解释:</strong></p>
|
||||
|
||||
<p>所有稳定的二进制数组包括 <code>[0,0,1,0,1,1]</code> ,<code>[0,0,1,1,0,1]</code> ,<code>[0,1,0,0,1,1]</code> ,<code>[0,1,0,1,0,1]</code> ,<code>[0,1,0,1,1,0]</code> ,<code>[0,1,1,0,0,1]</code> ,<code>[0,1,1,0,1,0]</code> ,<code>[1,0,0,1,0,1]</code> ,<code>[1,0,0,1,1,0]</code> ,<code>[1,0,1,0,0,1]</code> ,<code>[1,0,1,0,1,0]</code> ,<code>[1,0,1,1,0,0]</code> ,<code>[1,1,0,0,1,0]</code> 和 <code>[1,1,0,1,0,0]</code> 。</p>
|
||||
</div>
|
||||
|
||||
<p> </p>
|
||||
|
||||
<p><strong>提示:</strong></p>
|
||||
|
||||
<ul>
|
||||
<li><code>1 <= zero, one, limit <= 200</code></li>
|
||||
</ul>
|
@@ -0,0 +1,61 @@
|
||||
<p>给你 3 个正整数 <code>zero</code> ,<code>one</code> 和 <code>limit</code> 。</p>
|
||||
|
||||
<p>一个 <span data-keyword="binary-array">二进制数组</span> <code>arr</code> 如果满足以下条件,那么我们称它是 <strong>稳定的</strong> :</p>
|
||||
|
||||
<ul>
|
||||
<li>0 在 <code>arr</code> 中出现次数 <strong>恰好</strong> 为<strong> </strong><code>zero</code> 。</li>
|
||||
<li>1 在 <code>arr</code> 中出现次数 <strong>恰好</strong> 为 <code>one</code> 。</li>
|
||||
<li><code>arr</code> 中每个长度超过 <code>limit</code> 的 <span data-keyword="subarray-nonempty">子数组</span> 都 <strong>同时</strong> 包含 0 和 1 。</li>
|
||||
</ul>
|
||||
|
||||
<p>请你返回 <strong>稳定</strong> 二进制数组的 <em>总</em> 数目。</p>
|
||||
|
||||
<p>由于答案可能很大,将它对 <code>10<sup>9</sup> + 7</code> <b>取余</b> 后返回。</p>
|
||||
|
||||
<p> </p>
|
||||
|
||||
<p><strong class="example">示例 1:</strong></p>
|
||||
|
||||
<div class="example-block">
|
||||
<p><span class="example-io"><b>输入:</b>zero = 1, one = 1, limit = 2</span></p>
|
||||
|
||||
<p><span class="example-io"><b>输出:</b>2</span></p>
|
||||
|
||||
<p><strong>解释:</strong></p>
|
||||
|
||||
<p>两个稳定的二进制数组为 <code>[1,0]</code> 和 <code>[0,1]</code> ,两个数组都有一个 0 和一个 1 ,且没有子数组长度大于 2 。</p>
|
||||
</div>
|
||||
|
||||
<p><strong class="example">示例 2:</strong></p>
|
||||
|
||||
<div class="example-block">
|
||||
<p><strong>输入:</strong><span class="example-io">zero = 1, one = 2, limit = 1</span></p>
|
||||
|
||||
<p><span class="example-io"><b>输出:</b>1</span></p>
|
||||
|
||||
<p><strong>解释:</strong></p>
|
||||
|
||||
<p>唯一稳定的二进制数组是 <code>[1,0,1]</code> 。</p>
|
||||
|
||||
<p>二进制数组 <code>[1,1,0]</code> 和 <code>[0,1,1]</code> 都有长度为 2 且元素全都相同的子数组,所以它们不稳定。</p>
|
||||
</div>
|
||||
|
||||
<p><strong class="example">示例 3:</strong></p>
|
||||
|
||||
<div class="example-block">
|
||||
<p><span class="example-io"><b>输入:</b>zero = 3, one = 3, limit = 2</span></p>
|
||||
|
||||
<p><span class="example-io"><b>输出:</b>14</span></p>
|
||||
|
||||
<p><strong>解释:</strong></p>
|
||||
|
||||
<p>所有稳定的二进制数组包括 <code>[0,0,1,0,1,1]</code> ,<code>[0,0,1,1,0,1]</code> ,<code>[0,1,0,0,1,1]</code> ,<code>[0,1,0,1,0,1]</code> ,<code>[0,1,0,1,1,0]</code> ,<code>[0,1,1,0,0,1]</code> ,<code>[0,1,1,0,1,0]</code> ,<code>[1,0,0,1,0,1]</code> ,<code>[1,0,0,1,1,0]</code> ,<code>[1,0,1,0,0,1]</code> ,<code>[1,0,1,0,1,0]</code> ,<code>[1,0,1,1,0,0]</code> ,<code>[1,1,0,0,1,0]</code> 和 <code>[1,1,0,1,0,0]</code> 。</p>
|
||||
</div>
|
||||
|
||||
<p> </p>
|
||||
|
||||
<p><strong>提示:</strong></p>
|
||||
|
||||
<ul>
|
||||
<li><code>1 <= zero, one, limit <= 1000</code></li>
|
||||
</ul>
|
@@ -0,0 +1,37 @@
|
||||
<p>给你两个整数 <code>n</code> 和 <code>x</code> 。你需要构造一个长度为 <code>n</code> 的 <strong>正整数 </strong>数组 <code>nums</code> ,对于所有 <code>0 <= i < n - 1</code> ,满足 <code>nums[i + 1]</code><strong> 大于 </strong><code>nums[i]</code> ,并且数组 <code>nums</code> 中所有元素的按位 <code>AND</code> 运算结果为 <code>x</code> 。</p>
|
||||
|
||||
<p>返回 <code>nums[n - 1]</code> 可能的<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, x = 4</span></p>
|
||||
|
||||
<p><strong>输出:</strong><span class="example-io">6</span></p>
|
||||
|
||||
<p><strong>解释:</strong></p>
|
||||
|
||||
<p>数组 <code>nums</code> 可以是 <code>[4,5,6]</code> ,最后一个元素为 <code>6</code> 。</p>
|
||||
</div>
|
||||
|
||||
<p><strong class="example">示例 2:</strong></p>
|
||||
|
||||
<div class="example-block">
|
||||
<p><strong>输入:</strong><span class="example-io">n = 2, x = 7</span></p>
|
||||
|
||||
<p><strong>输出:</strong><span class="example-io">15</span></p>
|
||||
|
||||
<p><strong>解释:</strong></p>
|
||||
|
||||
<p>数组 <code>nums</code> 可以是 <code>[7,15]</code> ,最后一个元素为 <code>15</code> 。</p>
|
||||
</div>
|
||||
|
||||
<p> </p>
|
||||
|
||||
<p><strong>提示:</strong></p>
|
||||
|
||||
<ul>
|
||||
<li><code>1 <= n, x <= 10<sup>8</sup></code></li>
|
||||
</ul>
|
@@ -0,0 +1,40 @@
|
||||
<p>给你一个字符串 <code>s</code>,表示一个 12 小时制的时间格式,其中一些数字(可能没有)被 <code>"?"</code> 替换。</p>
|
||||
|
||||
<p>12 小时制时间格式为 <code>"HH:MM"</code> ,其中 <code>HH</code> 的取值范围为 <code>00</code> 至 <code>11</code>,<code>MM</code> 的取值范围为 <code>00</code> 至 <code>59</code>。最早的时间为 <code>00:00</code>,最晚的时间为 <code>11:59</code>。</p>
|
||||
|
||||
<p>你需要将 <code>s</code> 中的<strong> 所有</strong> <code>"?"</code> 字符替换为数字,使得结果字符串代表的时间是一个<strong> 有效 </strong>的 12 小时制时间,并且是可能的 <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">s = "1?:?4"</span></p>
|
||||
|
||||
<p><strong>输出:</strong> <span class="example-io">"11:54"</span></p>
|
||||
|
||||
<p><strong>解释:</strong> 通过替换 <code>"?"</code> 字符,可以得到的最晚12小时制时间是 <code>"11:54"</code>。</p>
|
||||
</div>
|
||||
|
||||
<p><strong class="example">示例 2:</strong></p>
|
||||
|
||||
<div class="example-block">
|
||||
<p><strong>输入:</strong> <span class="example-io">s = "0?:5?"</span></p>
|
||||
|
||||
<p><strong>输出:</strong> <span class="example-io">"09:59"</span></p>
|
||||
|
||||
<p><strong>解释:</strong> 通过替换 <code>"?"</code> 字符,可以得到的最晚12小时制时间是 <code>"09:59"</code>。</p>
|
||||
</div>
|
||||
|
||||
<p> </p>
|
||||
|
||||
<p><strong>提示:</strong></p>
|
||||
|
||||
<ul>
|
||||
<li><code>s.length == 5</code></li>
|
||||
<li><code>s[2]</code> 是字符 <code>":"</code></li>
|
||||
<li>除 <code>s[2]</code> 外,其他字符都是数字或 <code>"?"</code></li>
|
||||
<li>输入保证在替换 <code>"?"</code> 字符后至少存在一个介于 <code>"00:00"</code> 和 <code>"11:59"</code> 之间的时间。</li>
|
||||
</ul>
|
@@ -0,0 +1,57 @@
|
||||
<p>给你一个 <code>n</code> 个节点的无向带权图,节点编号为 <code>0</code> 到 <code>n - 1</code> 。图中总共有 <code>m</code> 条边,用二维数组 <code>edges</code> 表示,其中 <code>edges[i] = [a<sub>i</sub>, b<sub>i</sub>, w<sub>i</sub>]</code> 表示节点 <code>a<sub>i</sub></code> 和 <code>b<sub>i</sub></code> 之间有一条边权为 <code>w<sub>i</sub></code> 的边。</p>
|
||||
|
||||
<p>对于节点 <code>0</code> 为出发点,节点 <code>n - 1</code> 为结束点的所有最短路,你需要返回一个长度为 <code>m</code> 的 <strong>boolean</strong> 数组 <code>answer</code> ,如果 <code>edges[i]</code> <strong>至少</strong> 在其中一条最短路上,那么 <code>answer[i]</code> 为 <code>true</code> ,否则 <code>answer[i]</code> 为 <code>false</code> 。</p>
|
||||
|
||||
<p>请你返回数组 <code>answer</code> 。</p>
|
||||
|
||||
<p><b>注意</b>,图可能不连通。</p>
|
||||
|
||||
<p> </p>
|
||||
|
||||
<p><strong class="example">示例 1:</strong></p>
|
||||
|
||||
<p><img alt="" src="https://assets.leetcode.com/uploads/2024/03/05/graph35drawio-1.png" style="height: 129px; width: 250px;" /></p>
|
||||
|
||||
<div class="example-block">
|
||||
<p><span class="example-io"><b>输入:</b>n = 6, edges = [[0,1,4],[0,2,1],[1,3,2],[1,4,3],[1,5,1],[2,3,1],[3,5,3],[4,5,2]]</span></p>
|
||||
|
||||
<p><span class="example-io"><b>输出:</b>[true,true,true,false,true,true,true,false]</span></p>
|
||||
|
||||
<p><strong>解释:</strong></p>
|
||||
|
||||
<p>以下为节点 0 出发到达节点 5 的 <strong>所有</strong> 最短路:</p>
|
||||
|
||||
<ul>
|
||||
<li>路径 <code>0 -> 1 -> 5</code> :边权和为 <code>4 + 1 = 5</code> 。</li>
|
||||
<li>路径 <code>0 -> 2 -> 3 -> 5</code> :边权和为 <code>1 + 1 + 3 = 5</code> 。</li>
|
||||
<li>路径 <code>0 -> 2 -> 3 -> 1 -> 5</code> :边权和为 <code>1 + 1 + 2 + 1 = 5</code> 。</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<p><strong class="example">示例 2:</strong></p>
|
||||
|
||||
<p><img alt="" src="https://assets.leetcode.com/uploads/2024/03/05/graphhhh.png" style="width: 185px; height: 136px;" /></p>
|
||||
|
||||
<div class="example-block">
|
||||
<p><span class="example-io"><b>输入:</b>n = 4, edges = [[2,0,1],[0,1,1],[0,3,4],[3,2,2]]</span></p>
|
||||
|
||||
<p><span class="example-io"><b>输出:</b>[true,false,false,true]</span></p>
|
||||
|
||||
<p><strong>解释:</strong></p>
|
||||
|
||||
<p>只有一条从节点 0 出发到达节点 3 的最短路 <code>0 -> 2 -> 3</code> ,边权和为 <code>1 + 2 = 3</code> 。</p>
|
||||
</div>
|
||||
|
||||
<p> </p>
|
||||
|
||||
<p><strong>提示:</strong></p>
|
||||
|
||||
<ul>
|
||||
<li><code>2 <= n <= 5 * 10<sup>4</sup></code></li>
|
||||
<li><code>m == edges.length</code></li>
|
||||
<li><code>1 <= m <= min(5 * 10<sup>4</sup>, n * (n - 1) / 2)</code></li>
|
||||
<li><code>0 <= a<sub>i</sub>, b<sub>i</sub> < n</code></li>
|
||||
<li><code>a<sub>i</sub> != b<sub>i</sub></code></li>
|
||||
<li><code>1 <= w<sub>i</sub> <= 10<sup>5</sup></code></li>
|
||||
<li>图中没有重边。</li>
|
||||
</ul>
|
@@ -0,0 +1,130 @@
|
||||
<p>给你一个二维 <code>3 x 3</code> 的矩阵 <code>grid</code> ,每个格子都是一个字符,要么是 <code>'B'</code> ,要么是 <code>'W'</code> 。字符 <code>'W'</code> 表示白色,字符 <code>'B'</code> 表示黑色。</p>
|
||||
|
||||
<p>你的任务是改变 <strong>至多一个</strong> 格子的颜色,使得矩阵中存在一个 <code>2 x 2</code> 颜色完全相同的正方形。<!-- notionvc: adf957e1-fa0f-40e5-9a2e-933b95e276a7 --></p>
|
||||
|
||||
<p>如果可以得到一个相同颜色的 <code>2 x 2</code> 正方形,那么返回 <code>true</code> ,否则返回 <code>false</code> 。</p>
|
||||
|
||||
<p> </p>
|
||||
<style type="text/css">.grid-container {
|
||||
display: grid;
|
||||
grid-template-columns: 30px 30px 30px;
|
||||
padding: 10px;
|
||||
}
|
||||
.grid-item {
|
||||
background-color: black;
|
||||
border: 1px solid gray;
|
||||
height: 30px;
|
||||
font-size: 30px;
|
||||
text-align: center;
|
||||
}
|
||||
.grid-item-white {
|
||||
background-color: white;
|
||||
}
|
||||
</style>
|
||||
<style class="darkreader darkreader--sync" media="screen" type="text/css">
|
||||
</style>
|
||||
<p><strong class="example">示例 1:</strong></p>
|
||||
|
||||
<div class="grid-container">
|
||||
<div class="grid-item"> </div>
|
||||
|
||||
<div class="grid-item grid-item-white"> </div>
|
||||
|
||||
<div class="grid-item"> </div>
|
||||
|
||||
<div class="grid-item"> </div>
|
||||
|
||||
<div class="grid-item grid-item-white"> </div>
|
||||
|
||||
<div class="grid-item grid-item-white"> </div>
|
||||
|
||||
<div class="grid-item"> </div>
|
||||
|
||||
<div class="grid-item grid-item-white"> </div>
|
||||
|
||||
<div class="grid-item"> </div>
|
||||
</div>
|
||||
|
||||
<div class="example-block">
|
||||
<p><span class="example-io"><b>输入:</b>grid = [["B","W","B"],["B","W","W"],["B","W","B"]]</span></p>
|
||||
|
||||
<p><span class="example-io"><b>输出:</b>true</span></p>
|
||||
|
||||
<p><strong>解释:</strong></p>
|
||||
|
||||
<p>修改 <code>grid[0][2]</code> 的颜色,可以满足要求。</p>
|
||||
</div>
|
||||
|
||||
<p><strong class="example">示例 2:</strong></p>
|
||||
|
||||
<div class="grid-container">
|
||||
<div class="grid-item"> </div>
|
||||
|
||||
<div class="grid-item grid-item-white"> </div>
|
||||
|
||||
<div class="grid-item"> </div>
|
||||
|
||||
<div class="grid-item grid-item-white"> </div>
|
||||
|
||||
<div class="grid-item"> </div>
|
||||
|
||||
<div class="grid-item grid-item-white"> </div>
|
||||
|
||||
<div class="grid-item"> </div>
|
||||
|
||||
<div class="grid-item grid-item-white"> </div>
|
||||
|
||||
<div class="grid-item"> </div>
|
||||
</div>
|
||||
|
||||
<div class="example-block">
|
||||
<p><span class="example-io"><b>输入:</b>grid = [["B","W","B"],["W","B","W"],["B","W","B"]]</span></p>
|
||||
|
||||
<p><span class="example-io"><b>输出:</b>false</span></p>
|
||||
|
||||
<p><strong>解释:</strong></p>
|
||||
|
||||
<p>只改变一个格子颜色无法满足要求。</p>
|
||||
</div>
|
||||
|
||||
<p><strong class="example">示例 3:</strong></p>
|
||||
|
||||
<div class="grid-container">
|
||||
<div class="grid-item"> </div>
|
||||
|
||||
<div class="grid-item grid-item-white"> </div>
|
||||
|
||||
<div class="grid-item"> </div>
|
||||
|
||||
<div class="grid-item"> </div>
|
||||
|
||||
<div class="grid-item grid-item-white"> </div>
|
||||
|
||||
<div class="grid-item grid-item-white"> </div>
|
||||
|
||||
<div class="grid-item"> </div>
|
||||
|
||||
<div class="grid-item grid-item-white"> </div>
|
||||
|
||||
<div class="grid-item grid-item-white"> </div>
|
||||
</div>
|
||||
|
||||
<div class="example-block">
|
||||
<p><span class="example-io"><b>输入:</b>grid = [["B","W","B"],["B","W","W"],["B","W","W"]]</span></p>
|
||||
|
||||
<p><span class="example-io"><b>输出:</b>true</span></p>
|
||||
|
||||
<p><strong>解释:</strong></p>
|
||||
|
||||
<p><code>grid</code> 已经包含一个 <code>2 x 2</code> 颜色相同的正方形了。<!-- notionvc: 9a8b2d3d-1e73-457a-abe0-c16af51ad5c2 --></p>
|
||||
</div>
|
||||
|
||||
<p> </p>
|
||||
|
||||
<p><strong>提示:</strong></p>
|
||||
|
||||
<ul>
|
||||
<li><code>grid.length == 3</code></li>
|
||||
<li><code>grid[i].length == 3</code></li>
|
||||
<li><code>grid[i][j]</code> 要么是 <code>'W'</code> ,要么是 <code>'B'</code> 。</li>
|
||||
</ul>
|
166
leetcode-cn/problem (Chinese)/直角三角形 [right-triangles].html
Normal file
166
leetcode-cn/problem (Chinese)/直角三角形 [right-triangles].html
Normal file
@@ -0,0 +1,166 @@
|
||||
<p>给你一个二维 boolean 矩阵 <code>grid</code> 。</p>
|
||||
|
||||
<p>请你返回使用 <code>grid</code> 中的 3 个元素可以构建的 <strong>直角三角形</strong> 数目,且满足 3 个元素值 <strong>都</strong> 为 1 。</p>
|
||||
|
||||
<p><b>注意:</b></p>
|
||||
|
||||
<ul>
|
||||
<li>如果 <code>grid</code> 中 3 个元素满足:一个元素与另一个元素在 <strong>同一行</strong>,同时与第三个元素在 <strong>同一列</strong> ,那么这 3 个元素称为一个 <strong>直角三角形</strong> 。这 3 个元素互相之间不需要相邻。</li>
|
||||
</ul>
|
||||
|
||||
<p> </p>
|
||||
|
||||
<p><strong class="example">示例 1:</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 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;">0</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;">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 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;">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;">0</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;">0</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;">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 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;">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;">0</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
|
||||
<div class="example-block">
|
||||
<p><span class="example-io"><b>输入:</b>grid = [[0,1,0],[0,1,1],[0,1,0]]</span></p>
|
||||
|
||||
<p><span class="example-io"><b>输出:</b>2</span></p>
|
||||
|
||||
<p><b>解释:</b></p>
|
||||
|
||||
<p>有 2 个直角三角形。</p>
|
||||
</div>
|
||||
|
||||
<p><strong class="example">示例 2:</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 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;">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;">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;">0</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;">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;">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>
|
||||
</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;">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;">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;">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;">0</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
|
||||
<div class="example-block">
|
||||
<p><span class="example-io"><b>输入:</b>grid = [[1,0,0,0],[0,1,0,1],[1,0,0,0]]</span></p>
|
||||
|
||||
<p><span class="example-io"><b>输出:</b>0</span></p>
|
||||
|
||||
<p><strong>解释:</strong></p>
|
||||
|
||||
<p>没有直角三角形。</p>
|
||||
</div>
|
||||
|
||||
<p><strong class="example">示例 3:</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: #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;">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 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;">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;">0</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;">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;">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;">0</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 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;">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;">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;">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;">0</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: #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;">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;">0</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
|
||||
<div class="example-block">
|
||||
<p><span class="example-io"><b>输入:</b>grid = [[1,0,1],[1,0,0],[1,0,0]]</span></p>
|
||||
|
||||
<p><strong>输出:</strong>2</p>
|
||||
|
||||
<p><strong>解释:</strong></p>
|
||||
|
||||
<p>有两个直角三角形。</p>
|
||||
</div>
|
||||
|
||||
<p> </p>
|
||||
|
||||
<p><strong>提示:</strong></p>
|
||||
|
||||
<ul>
|
||||
<li><code>1 <= grid.length <= 1000</code></li>
|
||||
<li><code>1 <= grid[i].length <= 1000</code></li>
|
||||
<li><code>0 <= grid[i][j] <= 1</code></li>
|
||||
</ul>
|
@@ -0,0 +1,50 @@
|
||||
<p>给你一个字符串 <code>word</code>。如果 <code>word</code> 中同时存在某个字母的小写形式和大写形式,则称这个字母为 <strong>特殊字母</strong> 。</p>
|
||||
|
||||
<p>返回 <code>word</code> 中<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">word = "aaAbcBC"</span></p>
|
||||
|
||||
<p><strong>输出:</strong><span class="example-io">3</span></p>
|
||||
|
||||
<p><strong>解释:</strong></p>
|
||||
|
||||
<p><code>word</code> 中的特殊字母是 <code>'a'</code>、<code>'b'</code> 和 <code>'c'</code>。</p>
|
||||
</div>
|
||||
|
||||
<p><strong class="example">示例 2:</strong></p>
|
||||
|
||||
<div class="example-block">
|
||||
<p><strong>输入:</strong><span class="example-io">word = "abc"</span></p>
|
||||
|
||||
<p><strong>输出:</strong><span class="example-io">0</span></p>
|
||||
|
||||
<p><strong>解释:</strong></p>
|
||||
|
||||
<p><code>word</code> 中不存在大小写形式同时出现的字母。</p>
|
||||
</div>
|
||||
|
||||
<p><strong class="example">示例 3:</strong></p>
|
||||
|
||||
<div class="example-block">
|
||||
<p><strong>输入:</strong><span class="example-io">word = "abBCab"</span></p>
|
||||
|
||||
<p><strong>输出:</strong>1</p>
|
||||
|
||||
<p><strong>解释:</strong></p>
|
||||
|
||||
<p><code>word</code> 中唯一的特殊字母是 <code>'b'</code>。</p>
|
||||
</div>
|
||||
|
||||
<p> </p>
|
||||
|
||||
<p><strong>提示:</strong></p>
|
||||
|
||||
<ul>
|
||||
<li><code>1 <= word.length <= 50</code></li>
|
||||
<li><code>word</code> 仅由小写和大写英文字母组成。</li>
|
||||
</ul>
|
@@ -0,0 +1,50 @@
|
||||
<p>给你一个字符串 <code>word</code>。如果 <code>word</code> 中同时出现某个字母 <code>c</code> 的小写形式和大写形式,并且<strong> 每个 </strong>小写形式的 <code>c</code> 都出现在第一个大写形式的 <code>c</code> 之前,则称字母 <code>c</code> 是一个 <strong>特殊字母</strong> 。</p>
|
||||
|
||||
<p>返回 <code>word</code> 中 <strong>特殊字母</strong> 的数量。</p>
|
||||
|
||||
<p> </p>
|
||||
|
||||
<p><strong class="example">示例 1:</strong></p>
|
||||
|
||||
<div class="example-block">
|
||||
<p><strong>输入:</strong><span class="example-io">word = "aaAbcBC"</span></p>
|
||||
|
||||
<p><strong>输出:</strong><span class="example-io">3</span></p>
|
||||
|
||||
<p><strong>解释:</strong></p>
|
||||
|
||||
<p>特殊字母是 <code>'a'</code>、<code>'b'</code> 和 <code>'c'</code>。</p>
|
||||
</div>
|
||||
|
||||
<p><strong class="example">示例 2:</strong></p>
|
||||
|
||||
<div class="example-block">
|
||||
<p><strong>输入:</strong><span class="example-io">word = "abc"</span></p>
|
||||
|
||||
<p><strong>输出:</strong><span class="example-io">0</span></p>
|
||||
|
||||
<p><strong>解释:</strong></p>
|
||||
|
||||
<p><code>word</code> 中不存在特殊字母。</p>
|
||||
</div>
|
||||
|
||||
<p><strong class="example">示例 3:</strong></p>
|
||||
|
||||
<div class="example-block">
|
||||
<p><strong>输入:</strong><span class="example-io">word = "AbBCab"</span></p>
|
||||
|
||||
<p><strong>输出:</strong><span class="example-io">0</span></p>
|
||||
|
||||
<p><strong>解释:</strong></p>
|
||||
|
||||
<p><code>word</code> 中不存在特殊字母。</p>
|
||||
</div>
|
||||
|
||||
<p> </p>
|
||||
|
||||
<p><strong>提示:</strong></p>
|
||||
|
||||
<ul>
|
||||
<li><code>1 <= word.length <= 2 * 10<sup>5</sup></code></li>
|
||||
<li><code>word</code> 仅由小写和大写英文字母组成。</li>
|
||||
</ul>
|
@@ -0,0 +1,82 @@
|
||||
<p>给你一个二维整数数组 <code>point</code> ,其中 <code>points[i] = [x<sub>i</sub>, y<sub>i</sub>]</code> 表示二维平面内的一个点。同时给你一个整数 <code>w</code> 。你需要用矩形 <strong>覆盖所有</strong> 点。</p>
|
||||
|
||||
<p>每个矩形的左下角在某个点 <code>(x<sub>1</sub>, 0)</code> 处,且右上角在某个点 <code>(x<sub>2</sub>, y<sub>2</sub>)</code> 处,其中 <code>x<sub>1</sub> <= x<sub>2</sub></code> 且 <code>y<sub>2</sub> >= 0</code> ,同时对于每个矩形都 <strong>必须</strong> 满足 <code>x<sub>2</sub> - x<sub>1</sub> <= w</code> 。</p>
|
||||
|
||||
<p>如果一个点在矩形内或者在边上,我们说这个点被矩形覆盖了。</p>
|
||||
|
||||
<p>请你在确保每个点都 <strong>至少</strong> 被一个矩形覆盖的前提下,<strong>最少</strong> 需要多少个矩形。</p>
|
||||
|
||||
<p><strong>注意:</strong>一个点可以被多个矩形覆盖。</p>
|
||||
|
||||
<p> </p>
|
||||
|
||||
<p><strong class="example">示例 1:</strong></p>
|
||||
|
||||
<p><img alt="" src="https://assets.leetcode.com/uploads/2024/03/04/screenshot-from-2024-03-04-20-33-05.png" style="width: 205px; height: 300px;" /></p>
|
||||
|
||||
<div class="example-block" style="border-color: var(--border-tertiary); border-left-width: 2px; color: var(--text-secondary); margin-bottom: 1rem; margin-top: 1rem; overflow: visible; padding-left: 1rem;">
|
||||
<p style=""><span class="example-io" style="font-size: 8.75px;"><b>输入:</b></span><span class="example-io" style="font-size: 0.85rem; font-family: Menlo, sans-serif;">points = [[2,1],[1,0],[1,4],[1,8],[3,5],[4,6]], w = 1</span></p>
|
||||
|
||||
<p style=""><span class="example-io" style="font-size: 8.75px;"><b>输出:</b></span><span class="example-io" style="font-size: 0.85rem; font-family: Menlo, sans-serif;">2</span></p>
|
||||
|
||||
<p style="font-size: 0.875rem;"><strong>解释:</strong></p>
|
||||
|
||||
<p style="font-size: 0.875rem;">上图展示了一种可行的矩形放置方案:</p>
|
||||
|
||||
<ul style="font-size: 0.875rem;">
|
||||
<li>一个矩形的左下角在 <code>(1, 0)</code> ,右上角在 <code>(2, 8)</code> 。</li>
|
||||
<li>一个矩形的左下角在 <code>(3, 0)</code> ,右上角在 <code>(4, 8)</code> 。</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<p><strong class="example">示例 2:</strong></p>
|
||||
|
||||
<p><img alt="" src="https://assets.leetcode.com/uploads/2024/03/04/screenshot-from-2024-03-04-18-59-12.png" style="width: 260px; height: 250px;" /></p>
|
||||
|
||||
<div class="example-block" style="border-color: var(--border-tertiary); border-left-width: 2px; color: var(--text-secondary); margin-bottom: 1rem; margin-top: 1rem; overflow: visible; padding-left: 1rem;">
|
||||
<p style=""><span class="example-io" style="font-size: 8.75px;"><b>输入:</b></span><span class="example-io" style="font-size: 0.85rem; font-family: Menlo, sans-serif;">points = [[0,0],[1,1],[2,2],[3,3],[4,4],[5,5],[6,6]], w = 2</span></p>
|
||||
|
||||
<p style=""><span class="example-io" style="font-size: 8.75px;"><b>输出:</b></span><span class="example-io" style="font-size: 0.85rem; font-family: Menlo, sans-serif;">3</span></p>
|
||||
|
||||
<p style="font-size: 0.875rem;"><b>解释:</b></p>
|
||||
|
||||
<p style="font-size: 0.875rem;">上图展示了一种可行的矩形放置方案:</p>
|
||||
|
||||
<ul style="font-size: 0.875rem;">
|
||||
<li>一个矩形的左下角在 <code>(0, 0)</code> ,右上角在 <code>(2, 2)</code> 。</li>
|
||||
<li>一个矩形的左下角在 <code>(3, 0)</code> ,右上角在 <code>(5, 5)</code> 。</li>
|
||||
<li>一个矩形的左下角在 <code>(6, 0)</code> ,右上角在 <code>(6, 6)</code> 。</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<p><strong class="example">示例 3:</strong></p>
|
||||
|
||||
<p><img alt="" src="https://assets.leetcode.com/uploads/2024/03/04/screenshot-from-2024-03-04-20-24-03.png" style="height: 150px; width: 127px;" /></p>
|
||||
|
||||
<div class="example-block" style="border-color: var(--border-tertiary); border-left-width: 2px; color: var(--text-secondary); margin-bottom: 1rem; margin-top: 1rem; overflow: visible; padding-left: 1rem;">
|
||||
<p style=""><span class="example-io" style="font-size: 8.75px;"><b>输入:</b></span><span class="example-io" style="font-size: 0.85rem; font-family: Menlo, sans-serif;">points = [[2,3],[1,2]], w = 0</span></p>
|
||||
|
||||
<p style=""><span class="example-io" style="font-size: 8.75px;"><b>输出:</b></span><span class="example-io" style="font-size: 0.85rem; font-family: Menlo, sans-serif;">2</span></p>
|
||||
|
||||
<p style="font-size: 0.875rem;"><strong>解释:</strong></p>
|
||||
|
||||
<p style="font-size: 0.875rem;">上图展示了一种可行的矩形放置方案:</p>
|
||||
|
||||
<ul style="font-size: 0.875rem;">
|
||||
<li>一个矩形的左下角在 <code>(1, 0)</code> ,右上角在 <code>(1, 2)</code> 。</li>
|
||||
<li>一个矩形的左下角在 <code>(2, 0)</code> ,右上角在 <code>(2, 3)</code> 。</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<p> </p>
|
||||
|
||||
<p><strong>提示:</strong></p>
|
||||
|
||||
<ul>
|
||||
<li><code>1 <= points.length <= 10<sup>5</sup></code></li>
|
||||
<li><code>points[i].length == 2</code></li>
|
||||
<li><code>0 <= x<sub>i</sub> == points[i][0] <= 10<sup>9</sup></code></li>
|
||||
<li><code>0 <= y<sub>i</sub> == points[i][1] <= 10<sup>9</sup></code></li>
|
||||
<li><code>0 <= w <= 10<sup>9</sup></code></li>
|
||||
<li>所有点坐标 <code>(x<sub>i</sub>, y<sub>i</sub>)</code> 互不相同。</li>
|
||||
</ul>
|
@@ -0,0 +1,75 @@
|
||||
<p>给你一个二维数组 <code>edges</code> 表示一个 <code>n</code> 个点的无向图,其中 <code>edges[i] = [u<sub>i</sub>, v<sub>i</sub>, length<sub>i</sub>]</code> 表示节点 <code>u<sub>i</sub></code> 和节点 <code>v<sub>i</sub></code> 之间有一条需要 <code>length<sub>i</sub></code> 单位时间通过的无向边。</p>
|
||||
|
||||
<p>同时给你一个数组 <code>disappear</code> ,其中 <code>disappear[i]</code> 表示节点 <code>i</code> 从图中消失的时间点,在那一刻及以后,你无法再访问这个节点。</p>
|
||||
|
||||
<p><strong>注意</strong>,图有可能一开始是不连通的,两个节点之间也可能有多条边。</p>
|
||||
|
||||
<p>请你返回数组 <code>answer</code> ,<code>answer[i]</code> 表示从节点 <code>0</code> 到节点 <code>i</code> 需要的 <strong>最少</strong> 单位时间。如果从节点 <code>0</code> 出发 <strong>无法</strong> 到达节点 <code>i</code> ,那么 <code>answer[i]</code> 为 <code>-1</code> 。</p>
|
||||
|
||||
<p> </p>
|
||||
|
||||
<p><strong class="example">示例 1:</strong></p>
|
||||
|
||||
<p><img 10px="" alt="" padding:="" src="https://assets.leetcode.com/uploads/2024/03/09/example1.png" style="width: 350px; height: 210px;" /></p>
|
||||
|
||||
<div class="example-block" style="border-color: var(--border-tertiary); border-left-width: 2px; color: var(--text-secondary); margin-bottom: 1rem; margin-top: 1rem; overflow: visible; padding-left: 1rem;">
|
||||
<p style=""><span class="example-io" style="font-size: 8.75px;"><b>输入:</b></span><span class="example-io" style="font-size: 0.85rem; font-family: Menlo, sans-serif;">n = 3, edges = [[0,1,2],[1,2,1],[0,2,4]], disappear = [1,1,5]</span></p>
|
||||
|
||||
<p style=""><span class="example-io" style="font-size: 8.75px;"><b>输出:</b></span><span class="example-io" style="font-size: 0.85rem; font-family: Menlo, sans-serif;">[0,-1,4]</span></p>
|
||||
|
||||
<p style="font-size: 0.875rem;"><strong>解释:</strong></p>
|
||||
|
||||
<p style="font-size: 0.875rem;">我们从节点 0 出发,目的是用最少的时间在其他节点消失之前到达它们。</p>
|
||||
|
||||
<ul style="font-size: 0.875rem;">
|
||||
<li>对于节点 0 ,我们不需要任何时间,因为它就是我们的起点。</li>
|
||||
<li>对于节点 1 ,我们需要至少 2 单位时间,通过 <code>edges[0]</code> 到达。但当我们到达的时候,它已经消失了,所以我们无法到达它。</li>
|
||||
<li>对于节点 2 ,我们需要至少 4 单位时间,通过 <code>edges[2]</code> 到达。</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<p><strong class="example">示例 2:</strong></p>
|
||||
|
||||
<p><img 10px="" alt="" padding:="" src="https://assets.leetcode.com/uploads/2024/03/09/example2.png" style="width: 350px; height: 210px;" /></p>
|
||||
|
||||
<div class="example-block" style="border-color: var(--border-tertiary); border-left-width: 2px; color: var(--text-secondary); margin-bottom: 1rem; margin-top: 1rem; overflow: visible; padding-left: 1rem;">
|
||||
<p style=""><span class="example-io" style="font-size: 8.75px;"><b>输入:</b></span><span class="example-io" style="font-size: 0.85rem; font-family: Menlo, sans-serif;">n = 3, edges = [[0,1,2],[1,2,1],[0,2,4]], disappear = [1,3,5]</span></p>
|
||||
|
||||
<p style=""><span class="example-io" style="font-size: 8.75px;"><b>输出:</b></span><span class="example-io" style="font-size: 0.85rem; font-family: Menlo, sans-serif;">[0,2,3]</span></p>
|
||||
|
||||
<p style="font-size: 0.875rem;"><strong>解释:</strong></p>
|
||||
|
||||
<p style="font-size: 0.875rem;">我们从节点 0 出发,目的是用最少的时间在其他节点消失之前到达它们。</p>
|
||||
|
||||
<ul style="font-size: 0.875rem;">
|
||||
<li>对于节点 0 ,我们不需要任何时间,因为它就是我们的起点。</li>
|
||||
<li>对于节点 1 ,我们需要至少 2 单位时间,通过 <code>edges[0]</code> 到达。</li>
|
||||
<li>对于节点 2 ,我们需要至少 3 单位时间,通过 <code>edges[0]</code> 和 <code>edges[1]</code> 到达。</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<p><strong class="example">示例 3:</strong></p>
|
||||
|
||||
<div class="example-block" style="border-color: var(--border-tertiary); border-left-width: 2px; color: var(--text-secondary); margin-bottom: 1rem; margin-top: 1rem; overflow: visible; padding-left: 1rem;">
|
||||
<p><span class="example-io"><b>输入:</b>n = 2, edges = [[0,1,1]], disappear = [1,1]</span></p>
|
||||
|
||||
<p><span class="example-io"><b>输出:</b>[0,-1]</span></p>
|
||||
|
||||
<p><strong>解释:</strong></p>
|
||||
|
||||
<p>当我们到达节点 1 的时候,它恰好消失,所以我们无法到达节点 1 。</p>
|
||||
</div>
|
||||
|
||||
<p> </p>
|
||||
|
||||
<p><strong>提示:</strong></p>
|
||||
|
||||
<ul>
|
||||
<li><code>1 <= n <= 5 * 10<sup>4</sup></code></li>
|
||||
<li><code>0 <= edges.length <= 10<sup>5</sup></code></li>
|
||||
<li><code>edges[i] == [u<sub>i</sub>, v<sub>i</sub>, length<sub>i</sub>]</code></li>
|
||||
<li><code>0 <= u<sub>i</sub>, v<sub>i</sub> <= n - 1</code></li>
|
||||
<li><code>1 <= length<sub>i</sub> <= 10<sup>5</sup></code></li>
|
||||
<li><code>disappear.length == n</code></li>
|
||||
<li><code>1 <= disappear[i] <= 10<sup>5</sup></code></li>
|
||||
</ul>
|
@@ -0,0 +1,35 @@
|
||||
<p>给你一个整数数组 <code>nums</code>。</p>
|
||||
|
||||
<p>返回两个(不一定不同的)质数在 <code>nums</code> 中 <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">nums = [4,2,9,5,3]</span></p>
|
||||
|
||||
<p><strong>输出:</strong> <span class="example-io">3</span></p>
|
||||
|
||||
<p><strong>解释:</strong> <code>nums[1]</code>、<code>nums[3]</code> 和 <code>nums[4]</code> 是质数。因此答案是 <code>|4 - 1| = 3</code>。</p>
|
||||
</div>
|
||||
|
||||
<p><strong class="example">示例 2:</strong></p>
|
||||
|
||||
<div class="example-block">
|
||||
<p><strong>输入:</strong> <span class="example-io">nums = [4,8,2,8]</span></p>
|
||||
|
||||
<p><strong>输出:</strong> <span class="example-io">0</span></p>
|
||||
|
||||
<p><strong>解释:</strong> <code>nums[2]</code> 是质数。因为只有一个质数,所以答案是 <code>|2 - 2| = 0</code>。</p>
|
||||
</div>
|
||||
|
||||
<p> </p>
|
||||
|
||||
<p><strong>提示:</strong></p>
|
||||
|
||||
<ul>
|
||||
<li><code>1 <= nums.length <= 3 * 10<sup>5</sup></code></li>
|
||||
<li><code>1 <= nums[i] <= 100</code></li>
|
||||
<li>输入保证 <code>nums</code> 中至少有一个质数。</li>
|
||||
</ul>
|
@@ -0,0 +1,74 @@
|
||||
<p>给你一个 <strong>正</strong> 整数数组 <code>nums</code> 。</p>
|
||||
|
||||
<p>请你求出 <code>nums</code> 中有多少个子数组,满足子数组中 <strong>第一个</strong> 和 <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>nums = [1,4,3,3,2]</span></p>
|
||||
|
||||
<p><span class="example-io"><b>输出:</b>6</span></p>
|
||||
|
||||
<p><strong>解释:</strong></p>
|
||||
|
||||
<p>总共有 6 个子数组满足第一个元素和最后一个元素都是子数组中的最大值:</p>
|
||||
|
||||
<ul>
|
||||
<li>子数组 <code>[<u><em><strong>1</strong></em></u>,4,3,3,2]</code> ,最大元素为 1 ,第一个和最后一个元素都是 1 。</li>
|
||||
<li>子数组 <code>[1,<u><em><strong>4</strong></em></u>,3,3,2]</code> ,最大元素为 4 ,第一个和最后一个元素都是 4 。</li>
|
||||
<li>子数组 <code>[1,4,<u><em><strong>3</strong></em></u>,3,2]</code> ,最大元素为 3 ,第一个和最后一个元素都是 3 。</li>
|
||||
<li>子数组 <code>[1,4,3,<u><em><strong>3</strong></em></u>,2]</code> ,最大元素为 3 ,第一个和最后一个元素都是 3 。</li>
|
||||
<li>子数组 <code>[1,4,3,3,<u><em><strong>2</strong></em></u>]</code> ,最大元素为 2 ,第一个和最后一个元素都是 2 。</li>
|
||||
<li>子数组 <code>[1,4,<u><em><strong>3,3</strong></em></u>,2]</code> ,最大元素为 3 ,第一个和最后一个元素都是 3 。</li>
|
||||
</ul>
|
||||
|
||||
<p>所以我们返回 6 。</p>
|
||||
</div>
|
||||
|
||||
<p><strong class="example">示例 2:</strong></p>
|
||||
|
||||
<div class="example-block">
|
||||
<p><span class="example-io"><b>输入:</b>nums = [3,3,3]</span></p>
|
||||
|
||||
<p><span class="example-io"><b>输出:</b>6</span></p>
|
||||
|
||||
<p><strong>解释:</strong></p>
|
||||
|
||||
<p>总共有 6 个子数组满足第一个元素和最后一个元素都是子数组中的最大值:</p>
|
||||
|
||||
<ul>
|
||||
<li>子数组 <code>[<u><em><strong>3</strong></em></u>,3,3]</code> ,最大元素为 3 ,第一个和最后一个元素都是 3 。</li>
|
||||
<li>子数组 <code>[3,<u><em><strong>3</strong></em></u>,3]</code> ,最大元素为 3 ,第一个和最后一个元素都是 3 。</li>
|
||||
<li>子数组 <code>[3,3,<u><em><strong>3</strong></em></u>]</code> ,最大元素为 3 ,第一个和最后一个元素都是 3 。</li>
|
||||
<li>子数组 <code>[<u><em><strong>3,3</strong></em></u>,3]</code> ,最大元素为 3 ,第一个和最后一个元素都是 3 。</li>
|
||||
<li>子数组 <code>[3,<u><em><strong>3,3</strong></em></u>]</code> ,最大元素为 3 ,第一个和最后一个元素都是 3 。</li>
|
||||
<li>子数组 <code>[<u><em><strong>3,3,3</strong></em></u>]</code> ,最大元素为 3 ,第一个和最后一个元素都是 3 。</li>
|
||||
</ul>
|
||||
|
||||
<p>所以我们返回 6 。</p>
|
||||
</div>
|
||||
|
||||
<p><strong class="example">示例 3:</strong></p>
|
||||
|
||||
<div class="example-block">
|
||||
<p><span class="example-io"><b>输入:</b>nums = [1]</span></p>
|
||||
|
||||
<p><span class="example-io"><b>输出:</b>1</span></p>
|
||||
|
||||
<p><strong>解释:</strong></p>
|
||||
|
||||
<p><code>nums</code> 中只有一个子数组 <code>[<em><strong>1</strong></em>]</code> ,最大元素为 1 ,第一个和最后一个元素都是 1 。</p>
|
||||
|
||||
<p>所以我们返回 1 。</p>
|
||||
</div>
|
||||
|
||||
<p> </p>
|
||||
|
||||
<p><strong>提示:</strong></p>
|
||||
|
||||
<ul>
|
||||
<li><code>1 <= nums.length <= 10<sup>5</sup></code></li>
|
||||
<li><code>1 <= nums[i] <= 10<sup>9</sup></code></li>
|
||||
</ul>
|
Reference in New Issue
Block a user