Skip to content

Commit 96cdd85

Browse files
committed
deploy: c310525
1 parent 31029cb commit 96cdd85

File tree

15 files changed

+8096
-7190
lines changed

15 files changed

+8096
-7190
lines changed

en/sitemap.xml

Lines changed: 3450 additions & 3450 deletions
Large diffs are not rendered by default.

en/sitemap.xml.gz

1 Byte
Binary file not shown.

lcof2/109/index.html

Lines changed: 122 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -84631,7 +84631,7 @@ <h2 id="_2">解法</h2>
8463184631
<!-- solution:start -->
8463284632

8463384633
<h3 id="_3">方法一</h3>
84634-
<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>
84634+
<div class="tabbed-set tabbed-alternate" data-tabs="1:5"><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" /><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">Swift</label></div>
8463584635
<div class="tabbed-content">
8463684636
<div class="tabbed-block">
8463784637
<div class="highlight"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><span></span><span class="normal"> 1</span>
@@ -84991,6 +84991,122 @@ <h3 id="_3">方法一</h3>
8499184991
<span class="p">}</span>
8499284992
</code></pre></div></td></tr></table></div>
8499384993
</div>
84994+
<div class="tabbed-block">
84995+
<div class="highlight"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><span></span><span class="normal"> 1</span>
84996+
<span class="normal"> 2</span>
84997+
<span class="normal"> 3</span>
84998+
<span class="normal"> 4</span>
84999+
<span class="normal"> 5</span>
85000+
<span class="normal"> 6</span>
85001+
<span class="normal"> 7</span>
85002+
<span class="normal"> 8</span>
85003+
<span class="normal"> 9</span>
85004+
<span class="normal">10</span>
85005+
<span class="normal">11</span>
85006+
<span class="normal">12</span>
85007+
<span class="normal">13</span>
85008+
<span class="normal">14</span>
85009+
<span class="normal">15</span>
85010+
<span class="normal">16</span>
85011+
<span class="normal">17</span>
85012+
<span class="normal">18</span>
85013+
<span class="normal">19</span>
85014+
<span class="normal">20</span>
85015+
<span class="normal">21</span>
85016+
<span class="normal">22</span>
85017+
<span class="normal">23</span>
85018+
<span class="normal">24</span>
85019+
<span class="normal">25</span>
85020+
<span class="normal">26</span>
85021+
<span class="normal">27</span>
85022+
<span class="normal">28</span>
85023+
<span class="normal">29</span>
85024+
<span class="normal">30</span>
85025+
<span class="normal">31</span>
85026+
<span class="normal">32</span>
85027+
<span class="normal">33</span>
85028+
<span class="normal">34</span>
85029+
<span class="normal">35</span>
85030+
<span class="normal">36</span>
85031+
<span class="normal">37</span>
85032+
<span class="normal">38</span>
85033+
<span class="normal">39</span>
85034+
<span class="normal">40</span>
85035+
<span class="normal">41</span>
85036+
<span class="normal">42</span>
85037+
<span class="normal">43</span>
85038+
<span class="normal">44</span>
85039+
<span class="normal">45</span>
85040+
<span class="normal">46</span>
85041+
<span class="normal">47</span>
85042+
<span class="normal">48</span>
85043+
<span class="normal">49</span>
85044+
<span class="normal">50</span>
85045+
<span class="normal">51</span>
85046+
<span class="normal">52</span>
85047+
<span class="normal">53</span>
85048+
<span class="normal">54</span>
85049+
<span class="normal">55</span>
85050+
<span class="normal">56</span>
85051+
<span class="normal">57</span></pre></div></td><td class="code"><div><pre><span></span><code><span class="kd">class</span> <span class="nc">Solution</span> <span class="p">{</span>
85052+
<span class="kd">func</span> <span class="nf">openLock</span><span class="p">(</span><span class="kc">_</span> <span class="n">deadends</span><span class="p">:</span> <span class="p">[</span><span class="nb">String</span><span class="p">],</span> <span class="kc">_</span> <span class="n">target</span><span class="p">:</span> <span class="nb">String</span><span class="p">)</span> <span class="p">-&gt;</span> <span class="nb">Int</span> <span class="p">{</span>
85053+
<span class="kd">let</span> <span class="nv">deadSet</span> <span class="p">=</span> <span class="n">Set</span><span class="p">(</span><span class="n">deadends</span><span class="p">)</span>
85054+
<span class="k">if</span> <span class="n">deadSet</span><span class="p">.</span><span class="bp">contains</span><span class="p">(</span><span class="n">target</span><span class="p">)</span> <span class="o">||</span> <span class="n">deadSet</span><span class="p">.</span><span class="bp">contains</span><span class="p">(</span><span class="s">&quot;0000&quot;</span><span class="p">)</span> <span class="p">{</span>
85055+
<span class="k">return</span> <span class="o">-</span><span class="mi">1</span>
85056+
<span class="p">}</span>
85057+
<span class="k">if</span> <span class="n">target</span> <span class="p">==</span> <span class="s">&quot;0000&quot;</span> <span class="p">{</span>
85058+
<span class="k">return</span> <span class="mi">0</span>
85059+
<span class="p">}</span>
85060+
85061+
<span class="kd">var</span> <span class="nv">visited</span> <span class="p">=</span> <span class="n">Set</span><span class="p">&lt;</span><span class="nb">String</span><span class="p">&gt;()</span>
85062+
<span class="kd">var</span> <span class="nv">queue</span> <span class="p">=</span> <span class="p">[</span><span class="s">&quot;0000&quot;</span><span class="p">]</span>
85063+
<span class="n">visited</span><span class="p">.</span><span class="bp">insert</span><span class="p">(</span><span class="s">&quot;0000&quot;</span><span class="p">)</span>
85064+
<span class="kd">var</span> <span class="nv">step</span> <span class="p">=</span> <span class="mi">0</span>
85065+
85066+
<span class="k">while</span> <span class="o">!</span><span class="n">queue</span><span class="p">.</span><span class="bp">isEmpty</span> <span class="p">{</span>
85067+
<span class="n">step</span> <span class="o">+=</span> <span class="mi">1</span>
85068+
<span class="k">for</span> <span class="kc">_</span> <span class="k">in</span> <span class="mf">0.</span><span class="p">.&lt;</span><span class="n">queue</span><span class="p">.</span><span class="bp">count</span> <span class="p">{</span>
85069+
<span class="kd">let</span> <span class="nv">status</span> <span class="p">=</span> <span class="n">queue</span><span class="p">.</span><span class="n">removeFirst</span><span class="p">()</span>
85070+
<span class="k">for</span> <span class="n">neighbor</span> <span class="k">in</span> <span class="n">getNeighbors</span><span class="p">(</span><span class="n">status</span><span class="p">)</span> <span class="p">{</span>
85071+
<span class="k">if</span> <span class="n">visited</span><span class="p">.</span><span class="bp">contains</span><span class="p">(</span><span class="n">neighbor</span><span class="p">)</span> <span class="o">||</span> <span class="n">deadSet</span><span class="p">.</span><span class="bp">contains</span><span class="p">(</span><span class="n">neighbor</span><span class="p">)</span> <span class="p">{</span>
85072+
<span class="k">continue</span>
85073+
<span class="p">}</span>
85074+
<span class="k">if</span> <span class="n">neighbor</span> <span class="p">==</span> <span class="n">target</span> <span class="p">{</span>
85075+
<span class="k">return</span> <span class="n">step</span>
85076+
<span class="p">}</span>
85077+
<span class="n">queue</span><span class="p">.</span><span class="n">append</span><span class="p">(</span><span class="n">neighbor</span><span class="p">)</span>
85078+
<span class="n">visited</span><span class="p">.</span><span class="bp">insert</span><span class="p">(</span><span class="n">neighbor</span><span class="p">)</span>
85079+
<span class="p">}</span>
85080+
<span class="p">}</span>
85081+
<span class="p">}</span>
85082+
85083+
<span class="k">return</span> <span class="o">-</span><span class="mi">1</span>
85084+
<span class="p">}</span>
85085+
85086+
<span class="kd">private</span> <span class="kd">func</span> <span class="nf">getNeighbors</span><span class="p">(</span><span class="kc">_</span> <span class="n">lock</span><span class="p">:</span> <span class="nb">String</span><span class="p">)</span> <span class="p">-&gt;</span> <span class="p">[</span><span class="nb">String</span><span class="p">]</span> <span class="p">{</span>
85087+
<span class="kd">var</span> <span class="nv">neighbors</span> <span class="p">=</span> <span class="p">[</span><span class="nb">String</span><span class="p">]()</span>
85088+
<span class="kd">var</span> <span class="nv">chars</span> <span class="p">=</span> <span class="nb">Array</span><span class="p">(</span><span class="n">lock</span><span class="p">)</span>
85089+
<span class="k">for</span> <span class="n">i</span> <span class="k">in</span> <span class="mf">0.</span><span class="p">.&lt;</span><span class="mi">4</span> <span class="p">{</span>
85090+
<span class="kd">let</span> <span class="nv">original</span> <span class="p">=</span> <span class="n">chars</span><span class="p">[</span><span class="n">i</span><span class="p">]</span>
85091+
<span class="n">chars</span><span class="p">[</span><span class="n">i</span><span class="p">]</span> <span class="p">=</span> <span class="n">prevChar</span><span class="p">(</span><span class="n">original</span><span class="p">)</span>
85092+
<span class="n">neighbors</span><span class="p">.</span><span class="n">append</span><span class="p">(</span><span class="nb">String</span><span class="p">(</span><span class="n">chars</span><span class="p">))</span>
85093+
<span class="n">chars</span><span class="p">[</span><span class="n">i</span><span class="p">]</span> <span class="p">=</span> <span class="n">nextChar</span><span class="p">(</span><span class="n">original</span><span class="p">)</span>
85094+
<span class="n">neighbors</span><span class="p">.</span><span class="n">append</span><span class="p">(</span><span class="nb">String</span><span class="p">(</span><span class="n">chars</span><span class="p">))</span>
85095+
<span class="n">chars</span><span class="p">[</span><span class="n">i</span><span class="p">]</span> <span class="p">=</span> <span class="n">original</span>
85096+
<span class="p">}</span>
85097+
<span class="k">return</span> <span class="n">neighbors</span>
85098+
<span class="p">}</span>
85099+
85100+
<span class="kd">private</span> <span class="kd">func</span> <span class="nf">prevChar</span><span class="p">(</span><span class="kc">_</span> <span class="n">c</span><span class="p">:</span> <span class="nb">Character</span><span class="p">)</span> <span class="p">-&gt;</span> <span class="nb">Character</span> <span class="p">{</span>
85101+
<span class="k">return</span> <span class="n">c</span> <span class="p">==</span> <span class="s">&quot;0&quot;</span> <span class="p">?</span> <span class="s">&quot;9&quot;</span> <span class="p">:</span> <span class="nb">Character</span><span class="p">(</span><span class="nb">UnicodeScalar</span><span class="p">(</span><span class="n">c</span><span class="p">.</span><span class="n">asciiValue</span><span class="p">!</span> <span class="o">-</span> <span class="mi">1</span><span class="p">))</span>
85102+
<span class="p">}</span>
85103+
85104+
<span class="kd">private</span> <span class="kd">func</span> <span class="nf">nextChar</span><span class="p">(</span><span class="kc">_</span> <span class="n">c</span><span class="p">:</span> <span class="nb">Character</span><span class="p">)</span> <span class="p">-&gt;</span> <span class="nb">Character</span> <span class="p">{</span>
85105+
<span class="k">return</span> <span class="n">c</span> <span class="p">==</span> <span class="s">&quot;9&quot;</span> <span class="p">?</span> <span class="s">&quot;0&quot;</span> <span class="p">:</span> <span class="nb">Character</span><span class="p">(</span><span class="nb">UnicodeScalar</span><span class="p">(</span><span class="n">c</span><span class="p">.</span><span class="n">asciiValue</span><span class="p">!</span> <span class="o">+</span> <span class="mi">1</span><span class="p">))</span>
85106+
<span class="p">}</span>
85107+
<span class="p">}</span>
85108+
</code></pre></div></td></tr></table></div>
85109+
</div>
8499485110
</div>
8499585111
</div>
8499685112
<!-- solution:end -->
@@ -85024,6 +85140,11 @@ <h3 id="_3">方法一</h3>
8502485140

8502585141
<nav>
8502685142

85143+
<a href="https://github.com/klever34" class="md-author" title="@klever34">
85144+
85145+
<img src="https://avatars.githubusercontent.com/u/12745225?v=4&size=72" alt="klever34">
85146+
</a>
85147+
8502785148
<a href="https://github.com/taoyq1988" class="md-author" title="@taoyq1988">
8502885149

8502985150
<img src="https://avatars.githubusercontent.com/u/18185657?v=4&size=72" alt="taoyq1988">

lcof2/110/index.html

Lines changed: 56 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -84632,7 +84632,7 @@ <h2 id="_2">解法</h2>
8463284632
<!-- solution:start -->
8463384633

8463484634
<h3 id="_3">方法一</h3>
84635-
<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>
84635+
<div class="tabbed-set tabbed-alternate" data-tabs="1:5"><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" /><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">Swift</label></div>
8463684636
<div class="tabbed-content">
8463784637
<div class="tabbed-block">
8463884638
<div class="highlight"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><span></span><span class="normal"> 1</span>
@@ -84814,6 +84814,56 @@ <h3 id="_3">方法一</h3>
8481484814
<span class="p">}</span>
8481584815
</code></pre></div></td></tr></table></div>
8481684816
</div>
84817+
<div class="tabbed-block">
84818+
<div class="highlight"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><span></span><span class="normal"> 1</span>
84819+
<span class="normal"> 2</span>
84820+
<span class="normal"> 3</span>
84821+
<span class="normal"> 4</span>
84822+
<span class="normal"> 5</span>
84823+
<span class="normal"> 6</span>
84824+
<span class="normal"> 7</span>
84825+
<span class="normal"> 8</span>
84826+
<span class="normal"> 9</span>
84827+
<span class="normal">10</span>
84828+
<span class="normal">11</span>
84829+
<span class="normal">12</span>
84830+
<span class="normal">13</span>
84831+
<span class="normal">14</span>
84832+
<span class="normal">15</span>
84833+
<span class="normal">16</span>
84834+
<span class="normal">17</span>
84835+
<span class="normal">18</span>
84836+
<span class="normal">19</span>
84837+
<span class="normal">20</span>
84838+
<span class="normal">21</span>
84839+
<span class="normal">22</span>
84840+
<span class="normal">23</span>
84841+
<span class="normal">24</span></pre></div></td><td class="code"><div><pre><span></span><code><span class="kd">class</span> <span class="nc">Solution</span> <span class="p">{</span>
84842+
<span class="kd">private</span> <span class="kd">var</span> <span class="nv">results</span> <span class="p">=</span> <span class="p">[[</span><span class="nb">Int</span><span class="p">]]()</span>
84843+
<span class="kd">private</span> <span class="kd">var</span> <span class="nv">graph</span> <span class="p">=</span> <span class="p">[[</span><span class="nb">Int</span><span class="p">]]()</span>
84844+
84845+
<span class="kd">func</span> <span class="nf">allPathsSourceTarget</span><span class="p">(</span><span class="kc">_</span> <span class="n">graph</span><span class="p">:</span> <span class="p">[[</span><span class="nb">Int</span><span class="p">]])</span> <span class="p">-&gt;</span> <span class="p">[[</span><span class="nb">Int</span><span class="p">]]</span> <span class="p">{</span>
84846+
<span class="kc">self</span><span class="p">.</span><span class="n">graph</span> <span class="p">=</span> <span class="n">graph</span>
84847+
<span class="kd">var</span> <span class="nv">path</span> <span class="p">=</span> <span class="p">[</span><span class="mi">0</span><span class="p">]</span>
84848+
<span class="n">dfs</span><span class="p">(</span><span class="mi">0</span><span class="p">,</span> <span class="p">&amp;</span><span class="n">path</span><span class="p">)</span>
84849+
<span class="k">return</span> <span class="n">results</span>
84850+
<span class="p">}</span>
84851+
84852+
<span class="kd">private</span> <span class="kd">func</span> <span class="nf">dfs</span><span class="p">(</span><span class="kc">_</span> <span class="n">node</span><span class="p">:</span> <span class="nb">Int</span><span class="p">,</span> <span class="kc">_</span> <span class="n">path</span><span class="p">:</span> <span class="kr">inout</span> <span class="p">[</span><span class="nb">Int</span><span class="p">])</span> <span class="p">{</span>
84853+
<span class="k">if</span> <span class="n">node</span> <span class="p">==</span> <span class="n">graph</span><span class="p">.</span><span class="bp">count</span> <span class="o">-</span> <span class="mi">1</span> <span class="p">{</span>
84854+
<span class="n">results</span><span class="p">.</span><span class="n">append</span><span class="p">(</span><span class="nb">Array</span><span class="p">(</span><span class="n">path</span><span class="p">))</span>
84855+
<span class="k">return</span>
84856+
<span class="p">}</span>
84857+
84858+
<span class="k">for</span> <span class="n">next</span> <span class="k">in</span> <span class="n">graph</span><span class="p">[</span><span class="n">node</span><span class="p">]</span> <span class="p">{</span>
84859+
<span class="n">path</span><span class="p">.</span><span class="n">append</span><span class="p">(</span><span class="n">next</span><span class="p">)</span>
84860+
<span class="n">dfs</span><span class="p">(</span><span class="n">next</span><span class="p">,</span> <span class="p">&amp;</span><span class="n">path</span><span class="p">)</span>
84861+
<span class="n">path</span><span class="p">.</span><span class="bp">removeLast</span><span class="p">()</span>
84862+
<span class="p">}</span>
84863+
<span class="p">}</span>
84864+
<span class="p">}</span>
84865+
</code></pre></div></td></tr></table></div>
84866+
</div>
8481784867
</div>
8481884868
</div>
8481984869
<!-- solution:end -->
@@ -84847,6 +84897,11 @@ <h3 id="_3">方法一</h3>
8484784897

8484884898
<nav>
8484984899

84900+
<a href="https://github.com/klever34" class="md-author" title="@klever34">
84901+
84902+
<img src="https://avatars.githubusercontent.com/u/12745225?v=4&size=72" alt="klever34">
84903+
</a>
84904+
8485084905
<a href="https://github.com/yanglbme" class="md-author" title="@yanglbme">
8485184906

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

0 commit comments

Comments
 (0)