mirror of
https://gitee.com/coder-xiaomo/leetcode-problemset
synced 2025-09-13 03:11:42 +08:00
61 lines
2.8 KiB
HTML
61 lines
2.8 KiB
HTML
<p>给你一个由字符组成的 <code>m x n</code> 矩阵 <code>grid</code> 和一个字符串 <code>pattern</code>。</p>
|
||
|
||
<p><strong data-end="264" data-start="240">水平子串</strong> 是从左到右的一段连续字符序列。如果子串到达了某行的末尾,它将换行并从下一行的第一个字符继续。<strong>不会 </strong>从最后一行回到第一行。</p>
|
||
|
||
<p><strong data-end="484" data-start="462">垂直子串</strong> 是从上到下的一段连续字符序列。如果子串到达了某列的底部,它将换列并从下一列的第一个字符继续。<strong>不会 </strong>从最后一列回到第一列。</p>
|
||
|
||
<p>请统计矩阵中满足以下条件的单元格数量:</p>
|
||
|
||
<ul>
|
||
<li>该单元格必须属于 <strong>至少</strong> 一个等于 <code>pattern</code> 的水平子串,且属于 <strong>至少</strong> 一个等于 <code>pattern</code> 的垂直子串。</li>
|
||
</ul>
|
||
|
||
<p>返回满足条件的单元格数量。</p>
|
||
|
||
<p> </p>
|
||
|
||
<p><strong class="example">示例 1:</strong></p>
|
||
<img alt="" src="https://pic.leetcode.cn/1745660164-PjoTAy-gridtwosubstringsdrawio.png" style="width: 150px; height: 187px;" />
|
||
<div class="example-block">
|
||
<p><strong>输入:</strong> <span class="example-io">grid = [["a","a","c","c"],["b","b","b","c"],["a","a","b","a"],["c","a","a","c"],["a","a","b","a"]], pattern = "abaca"</span></p>
|
||
|
||
<p><strong>输出:</strong> <span class="example-io">1</span></p>
|
||
|
||
<p><strong>解释:</strong></p>
|
||
|
||
<p><code>"abaca"</code> 作为一个水平子串(蓝色)和一个垂直子串(红色)各出现一次,并在一个单元格(紫色)处相交。</p>
|
||
</div>
|
||
|
||
<p><strong class="example">示例 2:</strong></p>
|
||
<img alt="" src="https://pic.leetcode.cn/1745660201-bMoajW-gridexample2fixeddrawio.png" style="width: 150px; height: 150px;" />
|
||
<div class="example-block">
|
||
<p><strong>输入:</strong> <span class="example-io">grid = [["c","a","a","a"],["a","a","b","a"],["b","b","a","a"],["a","a","b","a"]], pattern = "aba"</span></p>
|
||
|
||
<p><strong>输出:</strong> <span class="example-io">4</span></p>
|
||
|
||
<p><strong>解释:</strong></p>
|
||
|
||
<p>上述被标记的单元格都同时属于至少一个 <code>"aba"</code> 的水平和垂直子串。</p>
|
||
</div>
|
||
|
||
<p><strong class="example">示例 3:</strong></p>
|
||
|
||
<div class="example-block">
|
||
<p><strong>输入:</strong> <span class="example-io">grid = [["a"]], pattern = "a"</span></p>
|
||
|
||
<p><strong>输出:</strong> 1</p>
|
||
</div>
|
||
|
||
<p> </p>
|
||
|
||
<p><strong>提示:</strong></p>
|
||
|
||
<ul>
|
||
<li><code>m == grid.length</code></li>
|
||
<li><code>n == grid[i].length</code></li>
|
||
<li><code>1 <= m, n <= 1000</code></li>
|
||
<li><code>1 <= m * n <= 10<sup>5</sup></code></li>
|
||
<li><code>1 <= pattern.length <= m * n</code></li>
|
||
<li><code>grid</code> 和 <code>pattern</code> 仅由小写英文字母组成。</li>
|
||
</ul>
|