2056120561 <ul class="md-nav__list">
2056220562
2056320563 <li class="md-nav__item">
20564- <a href="#solution-1" class="md-nav__link">
20564+ <a href="#solution-1-brain-teaser " class="md-nav__link">
2056520565 <span class="md-ellipsis">
20566- Solution 1
20566+ Solution 1: Brain Teaser
2056720567 </span>
2056820568 </a>
2056920569
@@ -85855,8 +85855,11 @@ <h2 id="description">Description</h2>
8585585855<h2 id="solutions">Solutions</h2>
8585685856<!-- solution:start -->
8585785857
85858- <h3 id="solution-1">Solution 1</h3>
85859- <div class="tabbed-set tabbed-alternate" data-tabs="1:4"><input checked="checked" id="__tabbed_1_1" name="__tabbed_1" type="radio" /><input id="__tabbed_1_2" name="__tabbed_1" type="radio" /><input id="__tabbed_1_3" name="__tabbed_1" type="radio" /><input id="__tabbed_1_4" name="__tabbed_1" type="radio" /><div class="tabbed-labels"><label for="__tabbed_1_1">Python3</label><label for="__tabbed_1_2">Java</label><label for="__tabbed_1_3">C++</label><label for="__tabbed_1_4">Go</label></div>
85858+ <h3 id="solution-1-brain-teaser">Solution 1: Brain Teaser</h3>
85859+ <p>We notice that the intersection of all operation submatrices is the submatrix where the final maximum integer is located, and each operation submatrix starts from the top-left corner $(0, 0)$. Therefore, we traverse all operation submatrices to find the minimum number of rows and columns. Finally, we return the product of these two values.</p>
85860+ <p>Note that if the operation array is empty, the number of maximum integers in the matrix is $m \times n$.</p>
85861+ <p>The time complexity is $O(k)$, where $k$ is the length of the operation array $\textit{ops}$. The space complexity is $O(1)$.</p>
85862+ <div class="tabbed-set tabbed-alternate" data-tabs="1:7"><input checked="checked" id="__tabbed_1_1" name="__tabbed_1" type="radio" /><input id="__tabbed_1_2" name="__tabbed_1" type="radio" /><input id="__tabbed_1_3" name="__tabbed_1" type="radio" /><input id="__tabbed_1_4" name="__tabbed_1" type="radio" /><input id="__tabbed_1_5" name="__tabbed_1" type="radio" /><input id="__tabbed_1_6" name="__tabbed_1" type="radio" /><input id="__tabbed_1_7" name="__tabbed_1" type="radio" /><div class="tabbed-labels"><label for="__tabbed_1_1">Python3</label><label for="__tabbed_1_2">Java</label><label for="__tabbed_1_3">C++</label><label for="__tabbed_1_4">Go</label><label for="__tabbed_1_5">TypeScript</label><label for="__tabbed_1_6">Rust</label><label for="__tabbed_1_7">JavaScript</label></div>
8586085863<div class="tabbed-content">
8586185864<div class="tabbed-block">
8586285865<div class="highlight"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><span></span><span class="normal">1</span>
@@ -85905,7 +85908,7 @@ <h3 id="solution-1">Solution 1</h3>
8590585908<span class="normal">10</span></pre></div></td><td class="code"><div><pre><span></span><code><span class="k">class</span><span class="w"> </span><span class="nc">Solution</span><span class="w"> </span><span class="p">{</span>
8590685909<span class="k">public</span><span class="o">:</span>
8590785910<span class="w"> </span><span class="kt">int</span><span class="w"> </span><span class="n">maxCount</span><span class="p">(</span><span class="kt">int</span><span class="w"> </span><span class="n">m</span><span class="p">,</span><span class="w"> </span><span class="kt">int</span><span class="w"> </span><span class="n">n</span><span class="p">,</span><span class="w"> </span><span class="n">vector</span><span class="o"><</span><span class="n">vector</span><span class="o"><</span><span class="kt">int</span><span class="o">>>&</span><span class="w"> </span><span class="n">ops</span><span class="p">)</span><span class="w"> </span><span class="p">{</span>
85908- <span class="w"> </span><span class="k">for</span><span class="w"> </span><span class="p">(</span><span class="k">auto</span><span class="w"> </span><span class="n">op</span><span class="w"> </span><span class="o">:</span><span class="w"> </span><span class="n">ops</span><span class="p">)</span><span class="w"> </span><span class="p">{</span>
85911+ <span class="w"> </span><span class="k">for</span><span class="w"> </span><span class="p">(</span><span class="k">const</span><span class="w"> </span><span class="k"> auto</span><span class="o">& </span><span class="w"> </span><span class="n">op</span><span class="w"> </span><span class="o">:</span><span class="w"> </span><span class="n">ops</span><span class="p">)</span><span class="w"> </span><span class="p">{</span>
8590985912<span class="w"> </span><span class="n">m</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">min</span><span class="p">(</span><span class="n">m</span><span class="p">,</span><span class="w"> </span><span class="n">op</span><span class="p">[</span><span class="mi">0</span><span class="p">]);</span>
8591085913<span class="w"> </span><span class="n">n</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">min</span><span class="p">(</span><span class="n">n</span><span class="p">,</span><span class="w"> </span><span class="n">op</span><span class="p">[</span><span class="mi">1</span><span class="p">]);</span>
8591185914<span class="w"> </span><span class="p">}</span>
@@ -85930,6 +85933,70 @@ <h3 id="solution-1">Solution 1</h3>
8593085933<span class="p">}</span>
8593185934</code></pre></div></td></tr></table></div>
8593285935</div>
85936+ <div class="tabbed-block">
85937+ <div class="highlight"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><span></span><span class="normal">1</span>
85938+ <span class="normal">2</span>
85939+ <span class="normal">3</span>
85940+ <span class="normal">4</span>
85941+ <span class="normal">5</span>
85942+ <span class="normal">6</span>
85943+ <span class="normal">7</span></pre></div></td><td class="code"><div><pre><span></span><code><span class="kd">function</span><span class="w"> </span><span class="nx">maxCount</span><span class="p">(</span><span class="nx">m</span><span class="o">:</span><span class="w"> </span><span class="kt">number</span><span class="p">,</span><span class="w"> </span><span class="nx">n</span><span class="o">:</span><span class="w"> </span><span class="kt">number</span><span class="p">,</span><span class="w"> </span><span class="nx">ops</span><span class="o">:</span><span class="w"> </span><span class="kt">number</span><span class="p">[][])</span><span class="o">:</span><span class="w"> </span><span class="kt">number</span><span class="w"> </span><span class="p">{</span>
85944+ <span class="w"> </span><span class="k">for</span><span class="w"> </span><span class="p">(</span><span class="kd">const</span><span class="w"> </span><span class="p">[</span><span class="nx">a</span><span class="p">,</span><span class="w"> </span><span class="nx">b</span><span class="p">]</span><span class="w"> </span><span class="k">of</span><span class="w"> </span><span class="nx">ops</span><span class="p">)</span><span class="w"> </span><span class="p">{</span>
85945+ <span class="w"> </span><span class="nx">m</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="nb">Math</span><span class="p">.</span><span class="nx">min</span><span class="p">(</span><span class="nx">m</span><span class="p">,</span><span class="w"> </span><span class="nx">a</span><span class="p">);</span>
85946+ <span class="w"> </span><span class="nx">n</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="nb">Math</span><span class="p">.</span><span class="nx">min</span><span class="p">(</span><span class="nx">n</span><span class="p">,</span><span class="w"> </span><span class="nx">b</span><span class="p">);</span>
85947+ <span class="w"> </span><span class="p">}</span>
85948+ <span class="w"> </span><span class="k">return</span><span class="w"> </span><span class="nx">m</span><span class="w"> </span><span class="o">*</span><span class="w"> </span><span class="nx">n</span><span class="p">;</span>
85949+ <span class="p">}</span>
85950+ </code></pre></div></td></tr></table></div>
85951+ </div>
85952+ <div class="tabbed-block">
85953+ <div class="highlight"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><span></span><span class="normal">1</span>
85954+ <span class="normal">2</span>
85955+ <span class="normal">3</span>
85956+ <span class="normal">4</span>
85957+ <span class="normal">5</span>
85958+ <span class="normal">6</span>
85959+ <span class="normal">7</span>
85960+ <span class="normal">8</span>
85961+ <span class="normal">9</span></pre></div></td><td class="code"><div><pre><span></span><code><span class="k">impl</span><span class="w"> </span><span class="n">Solution</span><span class="w"> </span><span class="p">{</span>
85962+ <span class="w"> </span><span class="k">pub</span><span class="w"> </span><span class="k">fn</span><span class="w"> </span><span class="nf">max_count</span><span class="p">(</span><span class="k">mut</span><span class="w"> </span><span class="n">m</span><span class="p">:</span><span class="w"> </span><span class="kt">i32</span><span class="p">,</span><span class="w"> </span><span class="k">mut</span><span class="w"> </span><span class="n">n</span><span class="p">:</span><span class="w"> </span><span class="kt">i32</span><span class="p">,</span><span class="w"> </span><span class="n">ops</span><span class="p">:</span><span class="w"> </span><span class="nb">Vec</span><span class="o"><</span><span class="nb">Vec</span><span class="o"><</span><span class="kt">i32</span><span class="o">>></span><span class="p">)</span><span class="w"> </span><span class="p">-></span><span class="w"> </span><span class="kt">i32</span><span class="w"> </span><span class="p">{</span>
85963+ <span class="w"> </span><span class="k">for</span><span class="w"> </span><span class="n">op</span><span class="w"> </span><span class="k">in</span><span class="w"> </span><span class="n">ops</span><span class="w"> </span><span class="p">{</span>
85964+ <span class="w"> </span><span class="n">m</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">m</span><span class="p">.</span><span class="n">min</span><span class="p">(</span><span class="n">op</span><span class="p">[</span><span class="mi">0</span><span class="p">]);</span>
85965+ <span class="w"> </span><span class="n">n</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">n</span><span class="p">.</span><span class="n">min</span><span class="p">(</span><span class="n">op</span><span class="p">[</span><span class="mi">1</span><span class="p">]);</span>
85966+ <span class="w"> </span><span class="p">}</span>
85967+ <span class="w"> </span><span class="n">m</span><span class="w"> </span><span class="o">*</span><span class="w"> </span><span class="n">n</span>
85968+ <span class="w"> </span><span class="p">}</span>
85969+ <span class="p">}</span>
85970+ </code></pre></div></td></tr></table></div>
85971+ </div>
85972+ <div class="tabbed-block">
85973+ <div class="highlight"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><span></span><span class="normal"> 1</span>
85974+ <span class="normal"> 2</span>
85975+ <span class="normal"> 3</span>
85976+ <span class="normal"> 4</span>
85977+ <span class="normal"> 5</span>
85978+ <span class="normal"> 6</span>
85979+ <span class="normal"> 7</span>
85980+ <span class="normal"> 8</span>
85981+ <span class="normal"> 9</span>
85982+ <span class="normal">10</span>
85983+ <span class="normal">11</span>
85984+ <span class="normal">12</span>
85985+ <span class="normal">13</span></pre></div></td><td class="code"><div><pre><span></span><code><span class="cm">/**</span>
85986+ <span class="cm"> * @param {number} m</span>
85987+ <span class="cm"> * @param {number} n</span>
85988+ <span class="cm"> * @param {number[][]} ops</span>
85989+ <span class="cm"> * @return {number}</span>
85990+ <span class="cm"> */</span>
85991+ <span class="kd">var</span><span class="w"> </span><span class="nx">maxCount</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="kd">function</span><span class="w"> </span><span class="p">(</span><span class="nx">m</span><span class="p">,</span><span class="w"> </span><span class="nx">n</span><span class="p">,</span><span class="w"> </span><span class="nx">ops</span><span class="p">)</span><span class="w"> </span><span class="p">{</span>
85992+ <span class="w"> </span><span class="k">for</span><span class="w"> </span><span class="p">(</span><span class="kd">const</span><span class="w"> </span><span class="p">[</span><span class="nx">a</span><span class="p">,</span><span class="w"> </span><span class="nx">b</span><span class="p">]</span><span class="w"> </span><span class="k">of</span><span class="w"> </span><span class="nx">ops</span><span class="p">)</span><span class="w"> </span><span class="p">{</span>
85993+ <span class="w"> </span><span class="nx">m</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="nb">Math</span><span class="p">.</span><span class="nx">min</span><span class="p">(</span><span class="nx">m</span><span class="p">,</span><span class="w"> </span><span class="nx">a</span><span class="p">);</span>
85994+ <span class="w"> </span><span class="nx">n</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="nb">Math</span><span class="p">.</span><span class="nx">min</span><span class="p">(</span><span class="nx">n</span><span class="p">,</span><span class="w"> </span><span class="nx">b</span><span class="p">);</span>
85995+ <span class="w"> </span><span class="p">}</span>
85996+ <span class="w"> </span><span class="k">return</span><span class="w"> </span><span class="nx">m</span><span class="w"> </span><span class="o">*</span><span class="w"> </span><span class="nx">n</span><span class="p">;</span>
85997+ <span class="p">};</span>
85998+ </code></pre></div></td></tr></table></div>
85999+ </div>
8593386000</div>
8593486001</div>
8593586002<!-- solution:end -->
0 commit comments