Skip to content

Commit e1434bc

Browse files
committed
deploy: 4610f29
1 parent 40d436b commit e1434bc

File tree

10 files changed

+105610
-268298
lines changed

10 files changed

+105610
-268298
lines changed

en/lc/2033/index.html

Lines changed: 67 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -87258,7 +87258,7 @@ <h2 id="description">Description</h2>
8725887258
<pre>
8725987259
<strong>Input:</strong> grid = [[2,4],[6,8]], x = 2
8726087260
<strong>Output:</strong> 4
87261-
<strong>Explanation:</strong> We can make every element equal to 4 by doing the following:
87261+
<strong>Explanation:</strong> We can make every element equal to 4 by doing the following:
8726287262
- Add x to 2 once.
8726387263
- Subtract x from 6 once.
8726487264
- Subtract x from 8 twice.
@@ -87301,7 +87301,7 @@ <h3 id="solution-1-greedy">Solution 1: Greedy</h3>
8730187301
<p>Firstly, to make the grid a single-value grid, the remainder of all elements of the grid with <span class="arithmatex">\(x\)</span> must be the same.</p>
8730287302
<p>Therefore, we can first traverse the grid to check whether the remainder of all elements with <span class="arithmatex">\(x\)</span> is the same. If not, return <span class="arithmatex">\(-1\)</span>. Otherwise, we put all elements into an array, sort the array, take the median, then traverse the array, calculate the difference between each element and the median, divide it by <span class="arithmatex">\(x\)</span>, and add all the differences to get the answer.</p>
8730387303
<p>The time complexity is <span class="arithmatex">\(O((m \times n) \times \log (m \times n))\)</span>, and the space complexity is <span class="arithmatex">\(O(m \times n)\)</span>. Here, <span class="arithmatex">\(m\)</span> and <span class="arithmatex">\(n\)</span> are the number of rows and columns of the grid, respectively.</p>
87304-
<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>
87304+
<div class="tabbed-set tabbed-alternate" data-tabs="1:6"><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" /><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">JavaScript</label></div>
8730587305
<div class="tabbed-content">
8730687306
<div class="tabbed-block">
8730787307
<div class="highlight"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><span></span><span class="normal"> 1</span>
@@ -87477,6 +87477,66 @@ <h3 id="solution-1-greedy">Solution 1: Greedy</h3>
8747787477
<span class="p">}</span>
8747887478
</code></pre></div></td></tr></table></div>
8747987479
</div>
87480+
<div class="tabbed-block">
87481+
<div class="highlight"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><span></span><span class="normal"> 1</span>
87482+
<span class="normal"> 2</span>
87483+
<span class="normal"> 3</span>
87484+
<span class="normal"> 4</span>
87485+
<span class="normal"> 5</span>
87486+
<span class="normal"> 6</span>
87487+
<span class="normal"> 7</span>
87488+
<span class="normal"> 8</span>
87489+
<span class="normal"> 9</span>
87490+
<span class="normal">10</span>
87491+
<span class="normal">11</span>
87492+
<span class="normal">12</span>
87493+
<span class="normal">13</span>
87494+
<span class="normal">14</span></pre></div></td><td class="code"><div><pre><span></span><code><span class="kd">function</span><span class="w"> </span><span class="nx">minOperations</span><span class="p">(</span><span class="nx">grid</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">x</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>
87495+
<span class="w"> </span><span class="kd">const</span><span class="w"> </span><span class="nx">arr</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="nx">grid</span><span class="p">.</span><span class="nx">flat</span><span class="p">(</span><span class="mf">2</span><span class="p">);</span>
87496+
<span class="w"> </span><span class="nx">arr</span><span class="p">.</span><span class="nx">sort</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="p">=&gt;</span><span class="w"> </span><span class="nx">a</span><span class="w"> </span><span class="o">-</span><span class="w"> </span><span class="nx">b</span><span class="p">);</span>
87497+
<span class="w"> </span><span class="kd">const</span><span class="w"> </span><span class="nx">median</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="nx">arr</span><span class="p">[</span><span class="nb">Math</span><span class="p">.</span><span class="nx">floor</span><span class="p">(</span><span class="nx">arr</span><span class="p">.</span><span class="nx">length</span><span class="w"> </span><span class="o">/</span><span class="w"> </span><span class="mf">2</span><span class="p">)];</span>
87498+
87499+
<span class="w"> </span><span class="kd">let</span><span class="w"> </span><span class="nx">res</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="mf">0</span><span class="p">;</span>
87500+
<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="nx">val</span><span class="w"> </span><span class="k">of</span><span class="w"> </span><span class="nx">arr</span><span class="p">)</span><span class="w"> </span><span class="p">{</span>
87501+
<span class="w"> </span><span class="kd">const</span><span class="w"> </span><span class="nx">c</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">abs</span><span class="p">(</span><span class="nx">val</span><span class="w"> </span><span class="o">-</span><span class="w"> </span><span class="nx">median</span><span class="p">)</span><span class="w"> </span><span class="o">/</span><span class="w"> </span><span class="nx">x</span><span class="p">;</span>
87502+
<span class="w"> </span><span class="k">if</span><span class="w"> </span><span class="p">(</span><span class="nx">c</span><span class="w"> </span><span class="o">!==</span><span class="w"> </span><span class="p">(</span><span class="nx">c</span><span class="w"> </span><span class="o">|</span><span class="w"> </span><span class="mf">0</span><span class="p">))</span><span class="w"> </span><span class="k">return</span><span class="w"> </span><span class="o">-</span><span class="mf">1</span><span class="p">;</span>
87503+
<span class="w"> </span><span class="nx">res</span><span class="w"> </span><span class="o">+=</span><span class="w"> </span><span class="nx">c</span><span class="p">;</span>
87504+
<span class="w"> </span><span class="p">}</span>
87505+
87506+
<span class="w"> </span><span class="k">return</span><span class="w"> </span><span class="nx">res</span><span class="p">;</span>
87507+
<span class="p">}</span>
87508+
</code></pre></div></td></tr></table></div>
87509+
</div>
87510+
<div class="tabbed-block">
87511+
<div class="highlight"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><span></span><span class="normal"> 1</span>
87512+
<span class="normal"> 2</span>
87513+
<span class="normal"> 3</span>
87514+
<span class="normal"> 4</span>
87515+
<span class="normal"> 5</span>
87516+
<span class="normal"> 6</span>
87517+
<span class="normal"> 7</span>
87518+
<span class="normal"> 8</span>
87519+
<span class="normal"> 9</span>
87520+
<span class="normal">10</span>
87521+
<span class="normal">11</span>
87522+
<span class="normal">12</span>
87523+
<span class="normal">13</span>
87524+
<span class="normal">14</span></pre></div></td><td class="code"><div><pre><span></span><code><span class="kd">function</span><span class="w"> </span><span class="nx">minOperations</span><span class="p">(</span><span class="nx">grid</span><span class="p">,</span><span class="w"> </span><span class="nx">x</span><span class="p">)</span><span class="w"> </span><span class="p">{</span>
87525+
<span class="w"> </span><span class="kd">const</span><span class="w"> </span><span class="nx">arr</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="nx">grid</span><span class="p">.</span><span class="nx">flat</span><span class="p">(</span><span class="mf">2</span><span class="p">);</span>
87526+
<span class="w"> </span><span class="nx">arr</span><span class="p">.</span><span class="nx">sort</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="p">=&gt;</span><span class="w"> </span><span class="nx">a</span><span class="w"> </span><span class="o">-</span><span class="w"> </span><span class="nx">b</span><span class="p">);</span>
87527+
<span class="w"> </span><span class="kd">const</span><span class="w"> </span><span class="nx">median</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="nx">arr</span><span class="p">[</span><span class="nb">Math</span><span class="p">.</span><span class="nx">floor</span><span class="p">(</span><span class="nx">arr</span><span class="p">.</span><span class="nx">length</span><span class="w"> </span><span class="o">/</span><span class="w"> </span><span class="mf">2</span><span class="p">)];</span>
87528+
87529+
<span class="w"> </span><span class="kd">let</span><span class="w"> </span><span class="nx">res</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="mf">0</span><span class="p">;</span>
87530+
<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="nx">val</span><span class="w"> </span><span class="k">of</span><span class="w"> </span><span class="nx">arr</span><span class="p">)</span><span class="w"> </span><span class="p">{</span>
87531+
<span class="w"> </span><span class="kd">const</span><span class="w"> </span><span class="nx">c</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">abs</span><span class="p">(</span><span class="nx">val</span><span class="w"> </span><span class="o">-</span><span class="w"> </span><span class="nx">median</span><span class="p">)</span><span class="w"> </span><span class="o">/</span><span class="w"> </span><span class="nx">x</span><span class="p">;</span>
87532+
<span class="w"> </span><span class="k">if</span><span class="w"> </span><span class="p">(</span><span class="nx">c</span><span class="w"> </span><span class="o">!==</span><span class="w"> </span><span class="p">(</span><span class="nx">c</span><span class="w"> </span><span class="o">|</span><span class="w"> </span><span class="mf">0</span><span class="p">))</span><span class="w"> </span><span class="k">return</span><span class="w"> </span><span class="o">-</span><span class="mf">1</span><span class="p">;</span>
87533+
<span class="w"> </span><span class="nx">res</span><span class="w"> </span><span class="o">+=</span><span class="w"> </span><span class="nx">c</span><span class="p">;</span>
87534+
<span class="w"> </span><span class="p">}</span>
87535+
87536+
<span class="w"> </span><span class="k">return</span><span class="w"> </span><span class="nx">res</span><span class="p">;</span>
87537+
<span class="p">}</span>
87538+
</code></pre></div></td></tr></table></div>
87539+
</div>
8748087540
</div>
8748187541
</div>
8748287542
<!-- solution:end -->
@@ -87510,6 +87570,11 @@ <h3 id="solution-1-greedy">Solution 1: Greedy</h3>
8751087570

8751187571
<nav>
8751287572

87573+
<a href="https://github.com/rain84" class="md-author" title="@rain84">
87574+
87575+
<img src="https://avatars.githubusercontent.com/u/1732547?v=4&size=72" alt="rain84">
87576+
</a>
87577+
8751387578
<a href="https://github.com/yanglbme" class="md-author" title="@yanglbme">
8751487579

8751587580
<img src="https://avatars.githubusercontent.com/u/21008209?v=4&size=72" alt="yanglbme">

en/search/search_index.json

Lines changed: 1 addition & 1 deletion
Large diffs are not rendered by default.

0 commit comments

Comments
 (0)