Skip to content

Commit 4687b6f

Browse files
committed
deploy: 6fe46bc
1 parent b93f2c2 commit 4687b6f

File tree

8 files changed

+7640
-7503
lines changed

8 files changed

+7640
-7503
lines changed

en/lc/822/index.html

Lines changed: 75 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -25613,9 +25613,9 @@
2561325613
<ul class="md-nav__list">
2561425614

2561525615
<li class="md-nav__item">
25616-
<a href="#solution-1" class="md-nav__link">
25616+
<a href="#solution-1-hash-table" class="md-nav__link">
2561725617
<span class="md-ellipsis">
25618-
Solution 1
25618+
Solution 1: Hash Table
2561925619
</span>
2562025620
</a>
2562125621

@@ -87275,8 +87275,13 @@ <h2 id="description">Description</h2>
8727587275
<h2 id="solutions">Solutions</h2>
8727687276
<!-- solution:start -->
8727787277

87278-
<h3 id="solution-1">Solution 1</h3>
87279-
<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">C#</label></div>
87278+
<h3 id="solution-1-hash-table">Solution 1: Hash Table</h3>
87279+
<p>We observe that for position <span class="arithmatex">\(i\)</span>, if <span class="arithmatex">\(\textit{fronts}[i]\)</span> is equal to <span class="arithmatex">\(\textit{backs}[i]\)</span>, then it certainly does not satisfy the condition.</p>
87280+
<p>Therefore, we first identify all elements that appear the same on both the front and back sides and record them in a hash set <span class="arithmatex">\(s\)</span>.</p>
87281+
<p>Next, we iterate through all elements in both the front and back arrays. For any element <span class="arithmatex">\(x\)</span> that is <strong>not</strong> in the hash set <span class="arithmatex">\(s\)</span>, we update the minimum value of the answer.</p>
87282+
<p>Finally, if we find any element that satisfies the condition, we return the minimum answer; otherwise, we return <span class="arithmatex">\(0\)</span>.</p>
87283+
<p>The time complexity is <span class="arithmatex">\(O(n)\)</span> and the space complexity is <span class="arithmatex">\(O(n)\)</span>, where <span class="arithmatex">\(n\)</span> is the length of the arrays.</p>
87284+
<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">C#</label></div>
8728087285
<div class="tabbed-content">
8728187286
<div class="tabbed-block">
8728287287
<div class="highlight"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><span></span><span class="normal">1</span>
@@ -87493,6 +87498,72 @@ <h3 id="solution-1">Solution 1</h3>
8749387498
<span class="normal">18</span>
8749487499
<span class="normal">19</span>
8749587500
<span class="normal">20</span>
87501+
<span class="normal">21</span>
87502+
<span class="normal">22</span>
87503+
<span class="normal">23</span>
87504+
<span class="normal">24</span>
87505+
<span class="normal">25</span>
87506+
<span class="normal">26</span>
87507+
<span class="normal">27</span>
87508+
<span class="normal">28</span>
87509+
<span class="normal">29</span>
87510+
<span class="normal">30</span>
87511+
<span class="normal">31</span>
87512+
<span class="normal">32</span></pre></div></td><td class="code"><div><pre><span></span><code><span class="k">use</span><span class="w"> </span><span class="n">std</span><span class="p">::</span><span class="n">collections</span><span class="p">::</span><span class="n">HashSet</span><span class="p">;</span>
87513+
87514+
<span class="k">impl</span><span class="w"> </span><span class="n">Solution</span><span class="w"> </span><span class="p">{</span>
87515+
<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">flipgame</span><span class="p">(</span><span class="n">fronts</span><span class="p">:</span><span class="w"> </span><span class="nb">Vec</span><span class="o">&lt;</span><span class="kt">i32</span><span class="o">&gt;</span><span class="p">,</span><span class="w"> </span><span class="n">backs</span><span class="p">:</span><span class="w"> </span><span class="nb">Vec</span><span class="o">&lt;</span><span class="kt">i32</span><span class="o">&gt;</span><span class="p">)</span><span class="w"> </span><span class="p">-&gt;</span><span class="w"> </span><span class="kt">i32</span><span class="w"> </span><span class="p">{</span>
87516+
<span class="w"> </span><span class="kd">let</span><span class="w"> </span><span class="n">n</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">fronts</span><span class="p">.</span><span class="n">len</span><span class="p">();</span>
87517+
<span class="w"> </span><span class="kd">let</span><span class="w"> </span><span class="k">mut</span><span class="w"> </span><span class="n">s</span><span class="p">:</span><span class="w"> </span><span class="nc">HashSet</span><span class="o">&lt;</span><span class="kt">i32</span><span class="o">&gt;</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">HashSet</span><span class="p">::</span><span class="n">new</span><span class="p">();</span>
87518+
87519+
<span class="w"> </span><span class="k">for</span><span class="w"> </span><span class="n">i</span><span class="w"> </span><span class="k">in</span><span class="w"> </span><span class="mi">0</span><span class="o">..</span><span class="n">n</span><span class="w"> </span><span class="p">{</span>
87520+
<span class="w"> </span><span class="k">if</span><span class="w"> </span><span class="n">fronts</span><span class="p">[</span><span class="n">i</span><span class="p">]</span><span class="w"> </span><span class="o">==</span><span class="w"> </span><span class="n">backs</span><span class="p">[</span><span class="n">i</span><span class="p">]</span><span class="w"> </span><span class="p">{</span>
87521+
<span class="w"> </span><span class="n">s</span><span class="p">.</span><span class="n">insert</span><span class="p">(</span><span class="n">fronts</span><span class="p">[</span><span class="n">i</span><span class="p">]);</span>
87522+
<span class="w"> </span><span class="p">}</span>
87523+
<span class="w"> </span><span class="p">}</span>
87524+
87525+
<span class="w"> </span><span class="kd">let</span><span class="w"> </span><span class="k">mut</span><span class="w"> </span><span class="n">ans</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="mi">9999</span><span class="p">;</span>
87526+
<span class="w"> </span><span class="k">for</span><span class="w"> </span><span class="o">&amp;</span><span class="n">v</span><span class="w"> </span><span class="k">in</span><span class="w"> </span><span class="n">fronts</span><span class="p">.</span><span class="n">iter</span><span class="p">()</span><span class="w"> </span><span class="p">{</span>
87527+
<span class="w"> </span><span class="k">if</span><span class="w"> </span><span class="o">!</span><span class="n">s</span><span class="p">.</span><span class="n">contains</span><span class="p">(</span><span class="o">&amp;</span><span class="n">v</span><span class="p">)</span><span class="w"> </span><span class="p">{</span>
87528+
<span class="w"> </span><span class="n">ans</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">ans</span><span class="p">.</span><span class="n">min</span><span class="p">(</span><span class="n">v</span><span class="p">);</span>
87529+
<span class="w"> </span><span class="p">}</span>
87530+
<span class="w"> </span><span class="p">}</span>
87531+
<span class="w"> </span><span class="k">for</span><span class="w"> </span><span class="o">&amp;</span><span class="n">v</span><span class="w"> </span><span class="k">in</span><span class="w"> </span><span class="n">backs</span><span class="p">.</span><span class="n">iter</span><span class="p">()</span><span class="w"> </span><span class="p">{</span>
87532+
<span class="w"> </span><span class="k">if</span><span class="w"> </span><span class="o">!</span><span class="n">s</span><span class="p">.</span><span class="n">contains</span><span class="p">(</span><span class="o">&amp;</span><span class="n">v</span><span class="p">)</span><span class="w"> </span><span class="p">{</span>
87533+
<span class="w"> </span><span class="n">ans</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">ans</span><span class="p">.</span><span class="n">min</span><span class="p">(</span><span class="n">v</span><span class="p">);</span>
87534+
<span class="w"> </span><span class="p">}</span>
87535+
<span class="w"> </span><span class="p">}</span>
87536+
87537+
<span class="w"> </span><span class="k">if</span><span class="w"> </span><span class="n">ans</span><span class="w"> </span><span class="o">==</span><span class="w"> </span><span class="mi">9999</span><span class="w"> </span><span class="p">{</span>
87538+
<span class="w"> </span><span class="mi">0</span>
87539+
<span class="w"> </span><span class="p">}</span><span class="w"> </span><span class="k">else</span><span class="w"> </span><span class="p">{</span>
87540+
<span class="w"> </span><span class="n">ans</span>
87541+
<span class="w"> </span><span class="p">}</span>
87542+
<span class="w"> </span><span class="p">}</span>
87543+
<span class="p">}</span>
87544+
</code></pre></div></td></tr></table></div>
87545+
</div>
87546+
<div class="tabbed-block">
87547+
<div class="highlight"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><span></span><span class="normal"> 1</span>
87548+
<span class="normal"> 2</span>
87549+
<span class="normal"> 3</span>
87550+
<span class="normal"> 4</span>
87551+
<span class="normal"> 5</span>
87552+
<span class="normal"> 6</span>
87553+
<span class="normal"> 7</span>
87554+
<span class="normal"> 8</span>
87555+
<span class="normal"> 9</span>
87556+
<span class="normal">10</span>
87557+
<span class="normal">11</span>
87558+
<span class="normal">12</span>
87559+
<span class="normal">13</span>
87560+
<span class="normal">14</span>
87561+
<span class="normal">15</span>
87562+
<span class="normal">16</span>
87563+
<span class="normal">17</span>
87564+
<span class="normal">18</span>
87565+
<span class="normal">19</span>
87566+
<span class="normal">20</span>
8749687567
<span class="normal">21</span></pre></div></td><td class="code"><div><pre><span></span><code><span class="k">public</span><span class="w"> </span><span class="k">class</span><span class="w"> </span><span class="nc">Solution</span><span class="w"> </span><span class="p">{</span>
8749787568
<span class="w"> </span><span class="k">public</span><span class="w"> </span><span class="kt">int</span><span class="w"> </span><span class="nf">Flipgame</span><span class="p">(</span><span class="kt">int</span><span class="p">[]</span><span class="w"> </span><span class="n">fronts</span><span class="p">,</span><span class="w"> </span><span class="kt">int</span><span class="p">[]</span><span class="w"> </span><span class="n">backs</span><span class="p">)</span><span class="w"> </span><span class="p">{</span>
8749887569
<span class="w"> </span><span class="kt">var</span><span class="w"> </span><span class="n">s</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="k">new</span><span class="w"> </span><span class="n">HashSet</span><span class="o">&lt;</span><span class="kt">int</span><span class="o">&gt;</span><span class="p">();</span>

en/search/search_index.json

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

0 commit comments

Comments
 (0)