1
0
mirror of https://gitee.com/coder-xiaomo/leetcode-problemset synced 2025-01-27 02:30:28 +08:00
Code Issues Projects Releases Wiki Activity GitHub Gitee
leetcode-problemset/leetcode-cn/problem (Chinese)/出现频率最高的质数 [most-frequent-prime].html

67 lines
3.7 KiB
HTML
Raw Normal View History

2024-02-19 15:29:53 +08:00
<p>给你一个大小为 <code>m x n</code> 、下标从 <strong>0</strong> 开始的二维矩阵 <code>mat</code> 。在每个单元格,你可以按以下方式生成数字:</p>
<ul>
<li>最多有 <code>8</code> 条路径可以选择:东,东南,南,西南,西,西北,北,东北。</li>
<li>选择其中一条路径,沿着这个方向移动,并且将路径上的数字添加到正在形成的数字后面。</li>
<li>注意,每一步都会生成数字,例如,如果路径上的数字是 <code>1, 9, 1</code>,那么在这个方向上会生成三个数字:<code>1, 19, 191</code></li>
</ul>
<p>返回在遍历矩阵所创建的所有数字中,出现频率最高的、<strong>大于</strong> <code>10</code><span data-keyword="prime-number">质数</span>;如果不存在这样的质数,则返回 <code>-1</code><em> </em>。如果存在多个出现频率最高的质数,那么返回其中最大的那个。</p>
<p><strong>注意:</strong>移动过程中不允许改变方向。</p>
<p>&nbsp;</p>
<p><strong class="example">示例 1</strong></p>
<strong><img alt="" src="https://assets.leetcode.com/uploads/2024/02/15/south" style="width: 641px; height: 291px;" /> </strong>
<pre>
<strong>
输入:</strong>mat = [[1,1],[9,9],[1,1]]
<strong>输出:</strong>19
<strong>解释:</strong>
从单元格 (0,0) 出发,有 3 个可能的方向,这些方向上可以生成的大于 10 的数字有:
东方向: [11], 东南方向: [19], 南方向: [19,191] 。
从单元格 (0,1) 出发,所有可能方向上生成的大于 10 的数字有:[19,191,19,11] 。
从单元格 (1,0) 出发,所有可能方向上生成的大于 10 的数字有:[99,91,91,91,91] 。
从单元格 (1,1) 出发,所有可能方向上生成的大于 10 的数字有:[91,91,99,91,91] 。
从单元格 (2,0) 出发,所有可能方向上生成的大于 10 的数字有:[11,19,191,19] 。
从单元格 (2,1) 出发,所有可能方向上生成的大于 10 的数字有:[11,19,19,191] 。
在所有生成的数字中,出现频率最高的质数是 19 。</pre>
<p><strong class="example">示例 2</strong></p>
<pre>
<strong>输入:</strong>mat = [[7]]
<strong>输出:</strong>-1
<strong>解释:</strong>唯一可以生成的数字是 7 。它是一个质数,但不大于 10 ,所以返回 -1 。</pre>
<p><strong class="example">示例 3</strong></p>
<pre>
<strong>输入:</strong>mat = [[9,7,8],[4,6,5],[2,8,6]]
<strong>输出:</strong>97
<strong>解释:</strong>
从单元格 (0,0) 出发,所有可能方向上生成的大于 10 的数字有: [97,978,96,966,94,942] 。
从单元格 (0,1) 出发,所有可能方向上生成的大于 10 的数字有: [78,75,76,768,74,79] 。
从单元格 (0,2) 出发,所有可能方向上生成的大于 10 的数字有: [85,856,86,862,87,879] 。
从单元格 (1,0) 出发,所有可能方向上生成的大于 10 的数字有: [46,465,48,42,49,47] 。
从单元格 (1,1) 出发,所有可能方向上生成的大于 10 的数字有: [65,66,68,62,64,69,67,68] 。
从单元格 (1,2) 出发,所有可能方向上生成的大于 10 的数字有: [56,58,56,564,57,58] 。
从单元格 (2,0) 出发,所有可能方向上生成的大于 10 的数字有: [28,286,24,249,26,268] 。
从单元格 (2,1) 出发,所有可能方向上生成的大于 10 的数字有: [86,82,84,86,867,85] 。
从单元格 (2,2) 出发,所有可能方向上生成的大于 10 的数字有: [68,682,66,669,65,658] 。
在所有生成的数字中,出现频率最高的质数是 97 。
</pre>
<p>&nbsp;</p>
<p><strong>提示:</strong></p>
<ul>
<li><code>m == mat.length</code></li>
<li><code>n == mat[i].length</code></li>
<li><code>1 &lt;= m, n &lt;= 6</code></li>
<li><code>1 &lt;= mat[i][j] &lt;= 9</code></li>
</ul>