mirror of
https://github.com/krahets/hello-algo.git
synced 2026-04-14 18:31:08 +08:00
deploy
This commit is contained in:
@@ -4187,7 +4187,7 @@
|
||||
<a id="__codelineno-25-7" name="__codelineno-25-7" href="#__codelineno-25-7"></a><span class="w"> </span><span class="n">path</span><span class="o">!!</span><span class="p">.</span><span class="na">add</span><span class="p">(</span><span class="n">root</span><span class="p">)</span>
|
||||
<a id="__codelineno-25-8" name="__codelineno-25-8" href="#__codelineno-25-8"></a><span class="w"> </span><span class="k">if</span><span class="w"> </span><span class="p">(</span><span class="n">root</span><span class="p">.</span><span class="na">value</span><span class="w"> </span><span class="o">==</span><span class="w"> </span><span class="m">7</span><span class="p">)</span><span class="w"> </span><span class="p">{</span>
|
||||
<a id="__codelineno-25-9" name="__codelineno-25-9" href="#__codelineno-25-9"></a><span class="w"> </span><span class="c1">// 记录解</span>
|
||||
<a id="__codelineno-25-10" name="__codelineno-25-10" href="#__codelineno-25-10"></a><span class="w"> </span><span class="n">res</span><span class="o">!!</span><span class="p">.</span><span class="na">add</span><span class="p">(</span><span class="n">ArrayList</span><span class="p">(</span><span class="n">path</span><span class="o">!!</span><span class="p">))</span>
|
||||
<a id="__codelineno-25-10" name="__codelineno-25-10" href="#__codelineno-25-10"></a><span class="w"> </span><span class="n">res</span><span class="o">!!</span><span class="p">.</span><span class="na">add</span><span class="p">(</span><span class="n">path</span><span class="o">!!</span><span class="p">.</span><span class="na">toMutableList</span><span class="p">())</span>
|
||||
<a id="__codelineno-25-11" name="__codelineno-25-11" href="#__codelineno-25-11"></a><span class="w"> </span><span class="p">}</span>
|
||||
<a id="__codelineno-25-12" name="__codelineno-25-12" href="#__codelineno-25-12"></a><span class="w"> </span><span class="n">preOrder</span><span class="p">(</span><span class="n">root</span><span class="p">.</span><span class="na">left</span><span class="p">)</span>
|
||||
<a id="__codelineno-25-13" name="__codelineno-25-13" href="#__codelineno-25-13"></a><span class="w"> </span><span class="n">preOrder</span><span class="p">(</span><span class="n">root</span><span class="p">.</span><span class="na">right</span><span class="p">)</span>
|
||||
@@ -4506,7 +4506,7 @@
|
||||
<a id="__codelineno-39-8" name="__codelineno-39-8" href="#__codelineno-39-8"></a><span class="w"> </span><span class="n">path</span><span class="o">!!</span><span class="p">.</span><span class="na">add</span><span class="p">(</span><span class="n">root</span><span class="p">)</span>
|
||||
<a id="__codelineno-39-9" name="__codelineno-39-9" href="#__codelineno-39-9"></a><span class="w"> </span><span class="k">if</span><span class="w"> </span><span class="p">(</span><span class="n">root</span><span class="p">.</span><span class="na">value</span><span class="w"> </span><span class="o">==</span><span class="w"> </span><span class="m">7</span><span class="p">)</span><span class="w"> </span><span class="p">{</span>
|
||||
<a id="__codelineno-39-10" name="__codelineno-39-10" href="#__codelineno-39-10"></a><span class="w"> </span><span class="c1">// 记录解</span>
|
||||
<a id="__codelineno-39-11" name="__codelineno-39-11" href="#__codelineno-39-11"></a><span class="w"> </span><span class="n">res</span><span class="o">!!</span><span class="p">.</span><span class="na">add</span><span class="p">(</span><span class="n">ArrayList</span><span class="p">(</span><span class="n">path</span><span class="o">!!</span><span class="p">))</span>
|
||||
<a id="__codelineno-39-11" name="__codelineno-39-11" href="#__codelineno-39-11"></a><span class="w"> </span><span class="n">res</span><span class="o">!!</span><span class="p">.</span><span class="na">add</span><span class="p">(</span><span class="n">path</span><span class="o">!!</span><span class="p">.</span><span class="na">toMutableList</span><span class="p">())</span>
|
||||
<a id="__codelineno-39-12" name="__codelineno-39-12" href="#__codelineno-39-12"></a><span class="w"> </span><span class="p">}</span>
|
||||
<a id="__codelineno-39-13" name="__codelineno-39-13" href="#__codelineno-39-13"></a><span class="w"> </span><span class="n">preOrder</span><span class="p">(</span><span class="n">root</span><span class="p">.</span><span class="na">left</span><span class="p">)</span>
|
||||
<a id="__codelineno-39-14" name="__codelineno-39-14" href="#__codelineno-39-14"></a><span class="w"> </span><span class="n">preOrder</span><span class="p">(</span><span class="n">root</span><span class="p">.</span><span class="na">right</span><span class="p">)</span>
|
||||
@@ -5388,17 +5388,17 @@
|
||||
</div>
|
||||
<div class="tabbed-block">
|
||||
<div class="highlight"><span class="filename">preorder_traversal_iii_template.kt</span><pre><span></span><code><a id="__codelineno-67-1" name="__codelineno-67-1" href="#__codelineno-67-1"></a><span class="cm">/* 判断当前状态是否为解 */</span>
|
||||
<a id="__codelineno-67-2" name="__codelineno-67-2" href="#__codelineno-67-2"></a><span class="kd">fun</span><span class="w"> </span><span class="nf">isSolution</span><span class="p">(</span><span class="n">state</span><span class="p">:</span><span class="w"> </span><span class="n">List</span><span class="o"><</span><span class="n">TreeNode?></span><span class="p">):</span><span class="w"> </span><span class="kt">Boolean</span><span class="w"> </span><span class="p">{</span>
|
||||
<a id="__codelineno-67-2" name="__codelineno-67-2" href="#__codelineno-67-2"></a><span class="kd">fun</span><span class="w"> </span><span class="nf">isSolution</span><span class="p">(</span><span class="n">state</span><span class="p">:</span><span class="w"> </span><span class="n">MutableList</span><span class="o"><</span><span class="n">TreeNode?></span><span class="p">):</span><span class="w"> </span><span class="kt">Boolean</span><span class="w"> </span><span class="p">{</span>
|
||||
<a id="__codelineno-67-3" name="__codelineno-67-3" href="#__codelineno-67-3"></a><span class="w"> </span><span class="k">return</span><span class="w"> </span><span class="n">state</span><span class="p">.</span><span class="na">isNotEmpty</span><span class="p">()</span><span class="w"> </span><span class="o">&&</span><span class="w"> </span><span class="n">state</span><span class="o">[</span><span class="n">state</span><span class="p">.</span><span class="na">size</span><span class="w"> </span><span class="o">-</span><span class="w"> </span><span class="m">1</span><span class="o">]?.</span><span class="na">value</span><span class="w"> </span><span class="o">==</span><span class="w"> </span><span class="m">7</span>
|
||||
<a id="__codelineno-67-4" name="__codelineno-67-4" href="#__codelineno-67-4"></a><span class="p">}</span>
|
||||
<a id="__codelineno-67-5" name="__codelineno-67-5" href="#__codelineno-67-5"></a>
|
||||
<a id="__codelineno-67-6" name="__codelineno-67-6" href="#__codelineno-67-6"></a><span class="cm">/* 记录解 */</span>
|
||||
<a id="__codelineno-67-7" name="__codelineno-67-7" href="#__codelineno-67-7"></a><span class="kd">fun</span><span class="w"> </span><span class="nf">recordSolution</span><span class="p">(</span><span class="n">state</span><span class="p">:</span><span class="w"> </span><span class="n">MutableList</span><span class="o"><</span><span class="n">TreeNode?></span><span class="o">?</span><span class="p">,</span><span class="w"> </span><span class="n">res</span><span class="p">:</span><span class="w"> </span><span class="n">MutableList</span><span class="o"><</span><span class="n">List</span><span class="o"><</span><span class="n">TreeNode?></span><span class="o">?></span><span class="p">)</span><span class="w"> </span><span class="p">{</span>
|
||||
<a id="__codelineno-67-8" name="__codelineno-67-8" href="#__codelineno-67-8"></a><span class="w"> </span><span class="n">res</span><span class="p">.</span><span class="na">add</span><span class="p">(</span><span class="n">state</span><span class="o">?.</span><span class="na">let</span><span class="w"> </span><span class="p">{</span><span class="w"> </span><span class="n">ArrayList</span><span class="p">(</span><span class="nb">it</span><span class="p">)</span><span class="w"> </span><span class="p">})</span>
|
||||
<a id="__codelineno-67-7" name="__codelineno-67-7" href="#__codelineno-67-7"></a><span class="kd">fun</span><span class="w"> </span><span class="nf">recordSolution</span><span class="p">(</span><span class="n">state</span><span class="p">:</span><span class="w"> </span><span class="n">MutableList</span><span class="o"><</span><span class="n">TreeNode?></span><span class="o">?</span><span class="p">,</span><span class="w"> </span><span class="n">res</span><span class="p">:</span><span class="w"> </span><span class="n">MutableList</span><span class="o"><</span><span class="n">MutableList</span><span class="o"><</span><span class="n">TreeNode?></span><span class="o">?></span><span class="p">)</span><span class="w"> </span><span class="p">{</span>
|
||||
<a id="__codelineno-67-8" name="__codelineno-67-8" href="#__codelineno-67-8"></a><span class="w"> </span><span class="n">res</span><span class="p">.</span><span class="na">add</span><span class="p">(</span><span class="n">state</span><span class="o">!!</span><span class="p">.</span><span class="na">toMutableList</span><span class="p">())</span>
|
||||
<a id="__codelineno-67-9" name="__codelineno-67-9" href="#__codelineno-67-9"></a><span class="p">}</span>
|
||||
<a id="__codelineno-67-10" name="__codelineno-67-10" href="#__codelineno-67-10"></a>
|
||||
<a id="__codelineno-67-11" name="__codelineno-67-11" href="#__codelineno-67-11"></a><span class="cm">/* 判断在当前状态下,该选择是否合法 */</span>
|
||||
<a id="__codelineno-67-12" name="__codelineno-67-12" href="#__codelineno-67-12"></a><span class="kd">fun</span><span class="w"> </span><span class="nf">isValid</span><span class="p">(</span><span class="n">state</span><span class="p">:</span><span class="w"> </span><span class="n">List</span><span class="o"><</span><span class="n">TreeNode?></span><span class="o">?</span><span class="p">,</span><span class="w"> </span><span class="n">choice</span><span class="p">:</span><span class="w"> </span><span class="n">TreeNode?)</span><span class="p">:</span><span class="w"> </span><span class="kt">Boolean</span><span class="w"> </span><span class="p">{</span>
|
||||
<a id="__codelineno-67-12" name="__codelineno-67-12" href="#__codelineno-67-12"></a><span class="kd">fun</span><span class="w"> </span><span class="nf">isValid</span><span class="p">(</span><span class="n">state</span><span class="p">:</span><span class="w"> </span><span class="n">MutableList</span><span class="o"><</span><span class="n">TreeNode?></span><span class="o">?</span><span class="p">,</span><span class="w"> </span><span class="n">choice</span><span class="p">:</span><span class="w"> </span><span class="n">TreeNode?)</span><span class="p">:</span><span class="w"> </span><span class="kt">Boolean</span><span class="w"> </span><span class="p">{</span>
|
||||
<a id="__codelineno-67-13" name="__codelineno-67-13" href="#__codelineno-67-13"></a><span class="w"> </span><span class="k">return</span><span class="w"> </span><span class="n">choice</span><span class="w"> </span><span class="o">!=</span><span class="w"> </span><span class="kc">null</span><span class="w"> </span><span class="o">&&</span><span class="w"> </span><span class="n">choice</span><span class="p">.</span><span class="na">value</span><span class="w"> </span><span class="o">!=</span><span class="w"> </span><span class="m">3</span>
|
||||
<a id="__codelineno-67-14" name="__codelineno-67-14" href="#__codelineno-67-14"></a><span class="p">}</span>
|
||||
<a id="__codelineno-67-15" name="__codelineno-67-15" href="#__codelineno-67-15"></a>
|
||||
@@ -5415,8 +5415,8 @@
|
||||
<a id="__codelineno-67-26" name="__codelineno-67-26" href="#__codelineno-67-26"></a><span class="cm">/* 回溯算法:例题三 */</span>
|
||||
<a id="__codelineno-67-27" name="__codelineno-67-27" href="#__codelineno-67-27"></a><span class="kd">fun</span><span class="w"> </span><span class="nf">backtrack</span><span class="p">(</span>
|
||||
<a id="__codelineno-67-28" name="__codelineno-67-28" href="#__codelineno-67-28"></a><span class="w"> </span><span class="n">state</span><span class="p">:</span><span class="w"> </span><span class="n">MutableList</span><span class="o"><</span><span class="n">TreeNode?></span><span class="p">,</span>
|
||||
<a id="__codelineno-67-29" name="__codelineno-67-29" href="#__codelineno-67-29"></a><span class="w"> </span><span class="n">choices</span><span class="p">:</span><span class="w"> </span><span class="n">List</span><span class="o"><</span><span class="n">TreeNode?></span><span class="p">,</span>
|
||||
<a id="__codelineno-67-30" name="__codelineno-67-30" href="#__codelineno-67-30"></a><span class="w"> </span><span class="n">res</span><span class="p">:</span><span class="w"> </span><span class="n">MutableList</span><span class="o"><</span><span class="n">List</span><span class="o"><</span><span class="n">TreeNode?></span><span class="o">?></span>
|
||||
<a id="__codelineno-67-29" name="__codelineno-67-29" href="#__codelineno-67-29"></a><span class="w"> </span><span class="n">choices</span><span class="p">:</span><span class="w"> </span><span class="n">MutableList</span><span class="o"><</span><span class="n">TreeNode?></span><span class="p">,</span>
|
||||
<a id="__codelineno-67-30" name="__codelineno-67-30" href="#__codelineno-67-30"></a><span class="w"> </span><span class="n">res</span><span class="p">:</span><span class="w"> </span><span class="n">MutableList</span><span class="o"><</span><span class="n">MutableList</span><span class="o"><</span><span class="n">TreeNode?></span><span class="o">?></span>
|
||||
<a id="__codelineno-67-31" name="__codelineno-67-31" href="#__codelineno-67-31"></a><span class="p">)</span><span class="w"> </span><span class="p">{</span>
|
||||
<a id="__codelineno-67-32" name="__codelineno-67-32" href="#__codelineno-67-32"></a><span class="w"> </span><span class="c1">// 检查是否为解</span>
|
||||
<a id="__codelineno-67-33" name="__codelineno-67-33" href="#__codelineno-67-33"></a><span class="w"> </span><span class="k">if</span><span class="w"> </span><span class="p">(</span><span class="n">isSolution</span><span class="p">(</span><span class="n">state</span><span class="p">))</span><span class="w"> </span><span class="p">{</span>
|
||||
@@ -5430,7 +5430,7 @@
|
||||
<a id="__codelineno-67-41" name="__codelineno-67-41" href="#__codelineno-67-41"></a><span class="w"> </span><span class="c1">// 尝试:做出选择,更新状态</span>
|
||||
<a id="__codelineno-67-42" name="__codelineno-67-42" href="#__codelineno-67-42"></a><span class="w"> </span><span class="n">makeChoice</span><span class="p">(</span><span class="n">state</span><span class="p">,</span><span class="w"> </span><span class="n">choice</span><span class="p">)</span>
|
||||
<a id="__codelineno-67-43" name="__codelineno-67-43" href="#__codelineno-67-43"></a><span class="w"> </span><span class="c1">// 进行下一轮选择</span>
|
||||
<a id="__codelineno-67-44" name="__codelineno-67-44" href="#__codelineno-67-44"></a><span class="w"> </span><span class="n">backtrack</span><span class="p">(</span><span class="n">state</span><span class="p">,</span><span class="w"> </span><span class="n">listOf</span><span class="p">(</span><span class="n">choice</span><span class="o">!!</span><span class="p">.</span><span class="na">left</span><span class="p">,</span><span class="w"> </span><span class="n">choice</span><span class="p">.</span><span class="na">right</span><span class="p">),</span><span class="w"> </span><span class="n">res</span><span class="p">)</span>
|
||||
<a id="__codelineno-67-44" name="__codelineno-67-44" href="#__codelineno-67-44"></a><span class="w"> </span><span class="n">backtrack</span><span class="p">(</span><span class="n">state</span><span class="p">,</span><span class="w"> </span><span class="n">mutableListOf</span><span class="p">(</span><span class="n">choice</span><span class="o">!!</span><span class="p">.</span><span class="na">left</span><span class="p">,</span><span class="w"> </span><span class="n">choice</span><span class="p">.</span><span class="na">right</span><span class="p">),</span><span class="w"> </span><span class="n">res</span><span class="p">)</span>
|
||||
<a id="__codelineno-67-45" name="__codelineno-67-45" href="#__codelineno-67-45"></a><span class="w"> </span><span class="c1">// 回退:撤销选择,恢复到之前的状态</span>
|
||||
<a id="__codelineno-67-46" name="__codelineno-67-46" href="#__codelineno-67-46"></a><span class="w"> </span><span class="n">undoChoice</span><span class="p">(</span><span class="n">state</span><span class="p">,</span><span class="w"> </span><span class="n">choice</span><span class="p">)</span>
|
||||
<a id="__codelineno-67-47" name="__codelineno-67-47" href="#__codelineno-67-47"></a><span class="w"> </span><span class="p">}</span>
|
||||
|
||||
@@ -4284,17 +4284,17 @@
|
||||
<a id="__codelineno-11-2" name="__codelineno-11-2" href="#__codelineno-11-2"></a><span class="kd">fun</span><span class="w"> </span><span class="nf">backtrack</span><span class="p">(</span>
|
||||
<a id="__codelineno-11-3" name="__codelineno-11-3" href="#__codelineno-11-3"></a><span class="w"> </span><span class="n">row</span><span class="p">:</span><span class="w"> </span><span class="kt">Int</span><span class="p">,</span>
|
||||
<a id="__codelineno-11-4" name="__codelineno-11-4" href="#__codelineno-11-4"></a><span class="w"> </span><span class="n">n</span><span class="p">:</span><span class="w"> </span><span class="kt">Int</span><span class="p">,</span>
|
||||
<a id="__codelineno-11-5" name="__codelineno-11-5" href="#__codelineno-11-5"></a><span class="w"> </span><span class="n">state</span><span class="p">:</span><span class="w"> </span><span class="n">List</span><span class="o"><</span><span class="n">MutableList</span><span class="o"><</span><span class="kt">String</span><span class="o">>></span><span class="p">,</span>
|
||||
<a id="__codelineno-11-6" name="__codelineno-11-6" href="#__codelineno-11-6"></a><span class="w"> </span><span class="n">res</span><span class="p">:</span><span class="w"> </span><span class="n">MutableList</span><span class="o"><</span><span class="n">List</span><span class="o"><</span><span class="n">List</span><span class="o"><</span><span class="kt">String</span><span class="o">>>?></span><span class="p">,</span>
|
||||
<a id="__codelineno-11-5" name="__codelineno-11-5" href="#__codelineno-11-5"></a><span class="w"> </span><span class="n">state</span><span class="p">:</span><span class="w"> </span><span class="n">MutableList</span><span class="o"><</span><span class="n">MutableList</span><span class="o"><</span><span class="kt">String</span><span class="o">>></span><span class="p">,</span>
|
||||
<a id="__codelineno-11-6" name="__codelineno-11-6" href="#__codelineno-11-6"></a><span class="w"> </span><span class="n">res</span><span class="p">:</span><span class="w"> </span><span class="n">MutableList</span><span class="o"><</span><span class="n">MutableList</span><span class="o"><</span><span class="n">MutableList</span><span class="o"><</span><span class="kt">String</span><span class="o">>>?></span><span class="p">,</span>
|
||||
<a id="__codelineno-11-7" name="__codelineno-11-7" href="#__codelineno-11-7"></a><span class="w"> </span><span class="n">cols</span><span class="p">:</span><span class="w"> </span><span class="n">BooleanArray</span><span class="p">,</span>
|
||||
<a id="__codelineno-11-8" name="__codelineno-11-8" href="#__codelineno-11-8"></a><span class="w"> </span><span class="n">diags1</span><span class="p">:</span><span class="w"> </span><span class="n">BooleanArray</span><span class="p">,</span>
|
||||
<a id="__codelineno-11-9" name="__codelineno-11-9" href="#__codelineno-11-9"></a><span class="w"> </span><span class="n">diags2</span><span class="p">:</span><span class="w"> </span><span class="n">BooleanArray</span>
|
||||
<a id="__codelineno-11-10" name="__codelineno-11-10" href="#__codelineno-11-10"></a><span class="p">)</span><span class="w"> </span><span class="p">{</span>
|
||||
<a id="__codelineno-11-11" name="__codelineno-11-11" href="#__codelineno-11-11"></a><span class="w"> </span><span class="c1">// 当放置完所有行时,记录解</span>
|
||||
<a id="__codelineno-11-12" name="__codelineno-11-12" href="#__codelineno-11-12"></a><span class="w"> </span><span class="k">if</span><span class="w"> </span><span class="p">(</span><span class="n">row</span><span class="w"> </span><span class="o">==</span><span class="w"> </span><span class="n">n</span><span class="p">)</span><span class="w"> </span><span class="p">{</span>
|
||||
<a id="__codelineno-11-13" name="__codelineno-11-13" href="#__codelineno-11-13"></a><span class="w"> </span><span class="kd">val</span><span class="w"> </span><span class="nv">copyState</span><span class="p">:</span><span class="w"> </span><span class="n">MutableList</span><span class="o"><</span><span class="n">List</span><span class="o"><</span><span class="kt">String</span><span class="o">>></span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">ArrayList</span><span class="p">()</span>
|
||||
<a id="__codelineno-11-13" name="__codelineno-11-13" href="#__codelineno-11-13"></a><span class="w"> </span><span class="kd">val</span><span class="w"> </span><span class="nv">copyState</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">mutableListOf</span><span class="o"><</span><span class="n">MutableList</span><span class="o"><</span><span class="kt">String</span><span class="o">>></span><span class="p">()</span>
|
||||
<a id="__codelineno-11-14" name="__codelineno-11-14" href="#__codelineno-11-14"></a><span class="w"> </span><span class="k">for</span><span class="w"> </span><span class="p">(</span><span class="n">sRow</span><span class="w"> </span><span class="k">in</span><span class="w"> </span><span class="n">state</span><span class="p">)</span><span class="w"> </span><span class="p">{</span>
|
||||
<a id="__codelineno-11-15" name="__codelineno-11-15" href="#__codelineno-11-15"></a><span class="w"> </span><span class="n">copyState</span><span class="p">.</span><span class="na">add</span><span class="p">(</span><span class="n">ArrayList</span><span class="p">(</span><span class="n">sRow</span><span class="p">))</span>
|
||||
<a id="__codelineno-11-15" name="__codelineno-11-15" href="#__codelineno-11-15"></a><span class="w"> </span><span class="n">copyState</span><span class="p">.</span><span class="na">add</span><span class="p">(</span><span class="n">sRow</span><span class="p">.</span><span class="na">toMutableList</span><span class="p">())</span>
|
||||
<a id="__codelineno-11-16" name="__codelineno-11-16" href="#__codelineno-11-16"></a><span class="w"> </span><span class="p">}</span>
|
||||
<a id="__codelineno-11-17" name="__codelineno-11-17" href="#__codelineno-11-17"></a><span class="w"> </span><span class="n">res</span><span class="p">.</span><span class="na">add</span><span class="p">(</span><span class="n">copyState</span><span class="p">)</span>
|
||||
<a id="__codelineno-11-18" name="__codelineno-11-18" href="#__codelineno-11-18"></a><span class="w"> </span><span class="k">return</span>
|
||||
@@ -4323,11 +4323,11 @@
|
||||
<a id="__codelineno-11-41" name="__codelineno-11-41" href="#__codelineno-11-41"></a><span class="p">}</span>
|
||||
<a id="__codelineno-11-42" name="__codelineno-11-42" href="#__codelineno-11-42"></a>
|
||||
<a id="__codelineno-11-43" name="__codelineno-11-43" href="#__codelineno-11-43"></a><span class="cm">/* 求解 n 皇后 */</span>
|
||||
<a id="__codelineno-11-44" name="__codelineno-11-44" href="#__codelineno-11-44"></a><span class="kd">fun</span><span class="w"> </span><span class="nf">nQueens</span><span class="p">(</span><span class="n">n</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">List</span><span class="o"><</span><span class="n">List</span><span class="o"><</span><span class="n">List</span><span class="o"><</span><span class="kt">String</span><span class="o">>>?></span><span class="w"> </span><span class="p">{</span>
|
||||
<a id="__codelineno-11-44" name="__codelineno-11-44" href="#__codelineno-11-44"></a><span class="kd">fun</span><span class="w"> </span><span class="nf">nQueens</span><span class="p">(</span><span class="n">n</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">MutableList</span><span class="o"><</span><span class="n">MutableList</span><span class="o"><</span><span class="n">MutableList</span><span class="o"><</span><span class="kt">String</span><span class="o">>>?></span><span class="w"> </span><span class="p">{</span>
|
||||
<a id="__codelineno-11-45" name="__codelineno-11-45" href="#__codelineno-11-45"></a><span class="w"> </span><span class="c1">// 初始化 n*n 大小的棋盘,其中 'Q' 代表皇后,'#' 代表空位</span>
|
||||
<a id="__codelineno-11-46" name="__codelineno-11-46" href="#__codelineno-11-46"></a><span class="w"> </span><span class="kd">val</span><span class="w"> </span><span class="nv">state</span><span class="p">:</span><span class="w"> </span><span class="n">MutableList</span><span class="o"><</span><span class="n">MutableList</span><span class="o"><</span><span class="kt">String</span><span class="o">>></span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">ArrayList</span><span class="p">()</span>
|
||||
<a id="__codelineno-11-46" name="__codelineno-11-46" href="#__codelineno-11-46"></a><span class="w"> </span><span class="kd">val</span><span class="w"> </span><span class="nv">state</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">mutableListOf</span><span class="o"><</span><span class="n">MutableList</span><span class="o"><</span><span class="kt">String</span><span class="o">>></span><span class="p">()</span>
|
||||
<a id="__codelineno-11-47" name="__codelineno-11-47" href="#__codelineno-11-47"></a><span class="w"> </span><span class="k">for</span><span class="w"> </span><span class="p">(</span><span class="n">i</span><span class="w"> </span><span class="k">in</span><span class="w"> </span><span class="m">0.</span><span class="p">.</span><span class="o"><</span><span class="n">n</span><span class="p">)</span><span class="w"> </span><span class="p">{</span>
|
||||
<a id="__codelineno-11-48" name="__codelineno-11-48" href="#__codelineno-11-48"></a><span class="w"> </span><span class="kd">val</span><span class="w"> </span><span class="nv">row</span><span class="p">:</span><span class="w"> </span><span class="n">MutableList</span><span class="o"><</span><span class="kt">String</span><span class="o">></span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">ArrayList</span><span class="p">()</span>
|
||||
<a id="__codelineno-11-48" name="__codelineno-11-48" href="#__codelineno-11-48"></a><span class="w"> </span><span class="kd">val</span><span class="w"> </span><span class="nv">row</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">mutableListOf</span><span class="o"><</span><span class="kt">String</span><span class="o">></span><span class="p">()</span>
|
||||
<a id="__codelineno-11-49" name="__codelineno-11-49" href="#__codelineno-11-49"></a><span class="w"> </span><span class="k">for</span><span class="w"> </span><span class="p">(</span><span class="n">j</span><span class="w"> </span><span class="k">in</span><span class="w"> </span><span class="m">0.</span><span class="p">.</span><span class="o"><</span><span class="n">n</span><span class="p">)</span><span class="w"> </span><span class="p">{</span>
|
||||
<a id="__codelineno-11-50" name="__codelineno-11-50" href="#__codelineno-11-50"></a><span class="w"> </span><span class="n">row</span><span class="p">.</span><span class="na">add</span><span class="p">(</span><span class="s">"#"</span><span class="p">)</span>
|
||||
<a id="__codelineno-11-51" name="__codelineno-11-51" href="#__codelineno-11-51"></a><span class="w"> </span><span class="p">}</span>
|
||||
@@ -4336,7 +4336,7 @@
|
||||
<a id="__codelineno-11-54" name="__codelineno-11-54" href="#__codelineno-11-54"></a><span class="w"> </span><span class="kd">val</span><span class="w"> </span><span class="nv">cols</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">BooleanArray</span><span class="p">(</span><span class="n">n</span><span class="p">)</span><span class="w"> </span><span class="c1">// 记录列是否有皇后</span>
|
||||
<a id="__codelineno-11-55" name="__codelineno-11-55" href="#__codelineno-11-55"></a><span class="w"> </span><span class="kd">val</span><span class="w"> </span><span class="nv">diags1</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">BooleanArray</span><span class="p">(</span><span class="m">2</span><span class="w"> </span><span class="o">*</span><span class="w"> </span><span class="n">n</span><span class="w"> </span><span class="o">-</span><span class="w"> </span><span class="m">1</span><span class="p">)</span><span class="w"> </span><span class="c1">// 记录主对角线上是否有皇后</span>
|
||||
<a id="__codelineno-11-56" name="__codelineno-11-56" href="#__codelineno-11-56"></a><span class="w"> </span><span class="kd">val</span><span class="w"> </span><span class="nv">diags2</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">BooleanArray</span><span class="p">(</span><span class="m">2</span><span class="w"> </span><span class="o">*</span><span class="w"> </span><span class="n">n</span><span class="w"> </span><span class="o">-</span><span class="w"> </span><span class="m">1</span><span class="p">)</span><span class="w"> </span><span class="c1">// 记录次对角线上是否有皇后</span>
|
||||
<a id="__codelineno-11-57" name="__codelineno-11-57" href="#__codelineno-11-57"></a><span class="w"> </span><span class="kd">val</span><span class="w"> </span><span class="nv">res</span><span class="p">:</span><span class="w"> </span><span class="n">MutableList</span><span class="o"><</span><span class="n">List</span><span class="o"><</span><span class="n">List</span><span class="o"><</span><span class="kt">String</span><span class="o">>>?></span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">ArrayList</span><span class="p">()</span>
|
||||
<a id="__codelineno-11-57" name="__codelineno-11-57" href="#__codelineno-11-57"></a><span class="w"> </span><span class="kd">val</span><span class="w"> </span><span class="nv">res</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">mutableListOf</span><span class="o"><</span><span class="n">MutableList</span><span class="o"><</span><span class="n">MutableList</span><span class="o"><</span><span class="kt">String</span><span class="o">>>?></span><span class="p">()</span>
|
||||
<a id="__codelineno-11-58" name="__codelineno-11-58" href="#__codelineno-11-58"></a>
|
||||
<a id="__codelineno-11-59" name="__codelineno-11-59" href="#__codelineno-11-59"></a><span class="w"> </span><span class="n">backtrack</span><span class="p">(</span><span class="m">0</span><span class="p">,</span><span class="w"> </span><span class="n">n</span><span class="p">,</span><span class="w"> </span><span class="n">state</span><span class="p">,</span><span class="w"> </span><span class="n">res</span><span class="p">,</span><span class="w"> </span><span class="n">cols</span><span class="p">,</span><span class="w"> </span><span class="n">diags1</span><span class="p">,</span><span class="w"> </span><span class="n">diags2</span><span class="p">)</span>
|
||||
<a id="__codelineno-11-60" name="__codelineno-11-60" href="#__codelineno-11-60"></a>
|
||||
|
||||
@@ -4224,11 +4224,11 @@
|
||||
<a id="__codelineno-11-3" name="__codelineno-11-3" href="#__codelineno-11-3"></a><span class="w"> </span><span class="n">state</span><span class="p">:</span><span class="w"> </span><span class="n">MutableList</span><span class="o"><</span><span class="kt">Int</span><span class="o">></span><span class="p">,</span>
|
||||
<a id="__codelineno-11-4" name="__codelineno-11-4" href="#__codelineno-11-4"></a><span class="w"> </span><span class="n">choices</span><span class="p">:</span><span class="w"> </span><span class="n">IntArray</span><span class="p">,</span>
|
||||
<a id="__codelineno-11-5" name="__codelineno-11-5" href="#__codelineno-11-5"></a><span class="w"> </span><span class="n">selected</span><span class="p">:</span><span class="w"> </span><span class="n">BooleanArray</span><span class="p">,</span>
|
||||
<a id="__codelineno-11-6" name="__codelineno-11-6" href="#__codelineno-11-6"></a><span class="w"> </span><span class="n">res</span><span class="p">:</span><span class="w"> </span><span class="n">MutableList</span><span class="o"><</span><span class="n">List</span><span class="o"><</span><span class="kt">Int</span><span class="o">>?></span>
|
||||
<a id="__codelineno-11-6" name="__codelineno-11-6" href="#__codelineno-11-6"></a><span class="w"> </span><span class="n">res</span><span class="p">:</span><span class="w"> </span><span class="n">MutableList</span><span class="o"><</span><span class="n">MutableList</span><span class="o"><</span><span class="kt">Int</span><span class="o">>?></span>
|
||||
<a id="__codelineno-11-7" name="__codelineno-11-7" href="#__codelineno-11-7"></a><span class="p">)</span><span class="w"> </span><span class="p">{</span>
|
||||
<a id="__codelineno-11-8" name="__codelineno-11-8" href="#__codelineno-11-8"></a><span class="w"> </span><span class="c1">// 当状态长度等于元素数量时,记录解</span>
|
||||
<a id="__codelineno-11-9" name="__codelineno-11-9" href="#__codelineno-11-9"></a><span class="w"> </span><span class="k">if</span><span class="w"> </span><span class="p">(</span><span class="n">state</span><span class="p">.</span><span class="na">size</span><span class="w"> </span><span class="o">==</span><span class="w"> </span><span class="n">choices</span><span class="p">.</span><span class="na">size</span><span class="p">)</span><span class="w"> </span><span class="p">{</span>
|
||||
<a id="__codelineno-11-10" name="__codelineno-11-10" href="#__codelineno-11-10"></a><span class="w"> </span><span class="n">res</span><span class="p">.</span><span class="na">add</span><span class="p">(</span><span class="n">ArrayList</span><span class="p">(</span><span class="n">state</span><span class="p">))</span>
|
||||
<a id="__codelineno-11-10" name="__codelineno-11-10" href="#__codelineno-11-10"></a><span class="w"> </span><span class="n">res</span><span class="p">.</span><span class="na">add</span><span class="p">(</span><span class="n">state</span><span class="p">.</span><span class="na">toMutableList</span><span class="p">())</span>
|
||||
<a id="__codelineno-11-11" name="__codelineno-11-11" href="#__codelineno-11-11"></a><span class="w"> </span><span class="k">return</span>
|
||||
<a id="__codelineno-11-12" name="__codelineno-11-12" href="#__codelineno-11-12"></a><span class="w"> </span><span class="p">}</span>
|
||||
<a id="__codelineno-11-13" name="__codelineno-11-13" href="#__codelineno-11-13"></a><span class="w"> </span><span class="c1">// 遍历所有选择</span>
|
||||
@@ -4249,9 +4249,9 @@
|
||||
<a id="__codelineno-11-28" name="__codelineno-11-28" href="#__codelineno-11-28"></a><span class="p">}</span>
|
||||
<a id="__codelineno-11-29" name="__codelineno-11-29" href="#__codelineno-11-29"></a>
|
||||
<a id="__codelineno-11-30" name="__codelineno-11-30" href="#__codelineno-11-30"></a><span class="cm">/* 全排列 I */</span>
|
||||
<a id="__codelineno-11-31" name="__codelineno-11-31" href="#__codelineno-11-31"></a><span class="kd">fun</span><span class="w"> </span><span class="nf">permutationsI</span><span class="p">(</span><span class="n">nums</span><span class="p">:</span><span class="w"> </span><span class="n">IntArray</span><span class="p">):</span><span class="w"> </span><span class="n">List</span><span class="o"><</span><span class="n">List</span><span class="o"><</span><span class="kt">Int</span><span class="o">>?></span><span class="w"> </span><span class="p">{</span>
|
||||
<a id="__codelineno-11-32" name="__codelineno-11-32" href="#__codelineno-11-32"></a><span class="w"> </span><span class="kd">val</span><span class="w"> </span><span class="nv">res</span><span class="p">:</span><span class="w"> </span><span class="n">MutableList</span><span class="o"><</span><span class="n">List</span><span class="o"><</span><span class="kt">Int</span><span class="o">>?></span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">ArrayList</span><span class="p">()</span>
|
||||
<a id="__codelineno-11-33" name="__codelineno-11-33" href="#__codelineno-11-33"></a><span class="w"> </span><span class="n">backtrack</span><span class="p">(</span><span class="n">ArrayList</span><span class="p">(),</span><span class="w"> </span><span class="n">nums</span><span class="p">,</span><span class="w"> </span><span class="n">BooleanArray</span><span class="p">(</span><span class="n">nums</span><span class="p">.</span><span class="na">size</span><span class="p">),</span><span class="w"> </span><span class="n">res</span><span class="p">)</span>
|
||||
<a id="__codelineno-11-31" name="__codelineno-11-31" href="#__codelineno-11-31"></a><span class="kd">fun</span><span class="w"> </span><span class="nf">permutationsI</span><span class="p">(</span><span class="n">nums</span><span class="p">:</span><span class="w"> </span><span class="n">IntArray</span><span class="p">):</span><span class="w"> </span><span class="n">MutableList</span><span class="o"><</span><span class="n">MutableList</span><span class="o"><</span><span class="kt">Int</span><span class="o">>?></span><span class="w"> </span><span class="p">{</span>
|
||||
<a id="__codelineno-11-32" name="__codelineno-11-32" href="#__codelineno-11-32"></a><span class="w"> </span><span class="kd">val</span><span class="w"> </span><span class="nv">res</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">mutableListOf</span><span class="o"><</span><span class="n">MutableList</span><span class="o"><</span><span class="kt">Int</span><span class="o">>?></span><span class="p">()</span>
|
||||
<a id="__codelineno-11-33" name="__codelineno-11-33" href="#__codelineno-11-33"></a><span class="w"> </span><span class="n">backtrack</span><span class="p">(</span><span class="n">mutableListOf</span><span class="p">(),</span><span class="w"> </span><span class="n">nums</span><span class="p">,</span><span class="w"> </span><span class="n">BooleanArray</span><span class="p">(</span><span class="n">nums</span><span class="p">.</span><span class="na">size</span><span class="p">),</span><span class="w"> </span><span class="n">res</span><span class="p">)</span>
|
||||
<a id="__codelineno-11-34" name="__codelineno-11-34" href="#__codelineno-11-34"></a><span class="w"> </span><span class="k">return</span><span class="w"> </span><span class="n">res</span>
|
||||
<a id="__codelineno-11-35" name="__codelineno-11-35" href="#__codelineno-11-35"></a><span class="p">}</span>
|
||||
</code></pre></div>
|
||||
@@ -4716,11 +4716,11 @@
|
||||
<a id="__codelineno-25-7" name="__codelineno-25-7" href="#__codelineno-25-7"></a><span class="p">)</span><span class="w"> </span><span class="p">{</span>
|
||||
<a id="__codelineno-25-8" name="__codelineno-25-8" href="#__codelineno-25-8"></a><span class="w"> </span><span class="c1">// 当状态长度等于元素数量时,记录解</span>
|
||||
<a id="__codelineno-25-9" name="__codelineno-25-9" href="#__codelineno-25-9"></a><span class="w"> </span><span class="k">if</span><span class="w"> </span><span class="p">(</span><span class="n">state</span><span class="p">.</span><span class="na">size</span><span class="w"> </span><span class="o">==</span><span class="w"> </span><span class="n">choices</span><span class="p">.</span><span class="na">size</span><span class="p">)</span><span class="w"> </span><span class="p">{</span>
|
||||
<a id="__codelineno-25-10" name="__codelineno-25-10" href="#__codelineno-25-10"></a><span class="w"> </span><span class="n">res</span><span class="p">.</span><span class="na">add</span><span class="p">(</span><span class="n">ArrayList</span><span class="p">(</span><span class="n">state</span><span class="p">))</span>
|
||||
<a id="__codelineno-25-10" name="__codelineno-25-10" href="#__codelineno-25-10"></a><span class="w"> </span><span class="n">res</span><span class="p">.</span><span class="na">add</span><span class="p">(</span><span class="n">state</span><span class="p">.</span><span class="na">toMutableList</span><span class="p">())</span>
|
||||
<a id="__codelineno-25-11" name="__codelineno-25-11" href="#__codelineno-25-11"></a><span class="w"> </span><span class="k">return</span>
|
||||
<a id="__codelineno-25-12" name="__codelineno-25-12" href="#__codelineno-25-12"></a><span class="w"> </span><span class="p">}</span>
|
||||
<a id="__codelineno-25-13" name="__codelineno-25-13" href="#__codelineno-25-13"></a><span class="w"> </span><span class="c1">// 遍历所有选择</span>
|
||||
<a id="__codelineno-25-14" name="__codelineno-25-14" href="#__codelineno-25-14"></a><span class="w"> </span><span class="kd">val</span><span class="w"> </span><span class="nv">duplicated</span><span class="p">:</span><span class="w"> </span><span class="n">MutableSet</span><span class="o"><</span><span class="kt">Int</span><span class="o">></span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">HashSet</span><span class="p">()</span>
|
||||
<a id="__codelineno-25-14" name="__codelineno-25-14" href="#__codelineno-25-14"></a><span class="w"> </span><span class="kd">val</span><span class="w"> </span><span class="nv">duplicated</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">HashSet</span><span class="o"><</span><span class="kt">Int</span><span class="o">></span><span class="p">()</span>
|
||||
<a id="__codelineno-25-15" name="__codelineno-25-15" href="#__codelineno-25-15"></a><span class="w"> </span><span class="k">for</span><span class="w"> </span><span class="p">(</span><span class="n">i</span><span class="w"> </span><span class="k">in</span><span class="w"> </span><span class="n">choices</span><span class="p">.</span><span class="na">indices</span><span class="p">)</span><span class="w"> </span><span class="p">{</span>
|
||||
<a id="__codelineno-25-16" name="__codelineno-25-16" href="#__codelineno-25-16"></a><span class="w"> </span><span class="kd">val</span><span class="w"> </span><span class="nv">choice</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">choices</span><span class="o">[</span><span class="n">i</span><span class="o">]</span>
|
||||
<a id="__codelineno-25-17" name="__codelineno-25-17" href="#__codelineno-25-17"></a><span class="w"> </span><span class="c1">// 剪枝:不允许重复选择元素 且 不允许重复选择相等元素</span>
|
||||
@@ -4740,8 +4740,8 @@
|
||||
<a id="__codelineno-25-31" name="__codelineno-25-31" href="#__codelineno-25-31"></a>
|
||||
<a id="__codelineno-25-32" name="__codelineno-25-32" href="#__codelineno-25-32"></a><span class="cm">/* 全排列 II */</span>
|
||||
<a id="__codelineno-25-33" name="__codelineno-25-33" href="#__codelineno-25-33"></a><span class="kd">fun</span><span class="w"> </span><span class="nf">permutationsII</span><span class="p">(</span><span class="n">nums</span><span class="p">:</span><span class="w"> </span><span class="n">IntArray</span><span class="p">):</span><span class="w"> </span><span class="n">MutableList</span><span class="o"><</span><span class="n">MutableList</span><span class="o"><</span><span class="kt">Int</span><span class="o">>?></span><span class="w"> </span><span class="p">{</span>
|
||||
<a id="__codelineno-25-34" name="__codelineno-25-34" href="#__codelineno-25-34"></a><span class="w"> </span><span class="kd">val</span><span class="w"> </span><span class="nv">res</span><span class="p">:</span><span class="w"> </span><span class="n">MutableList</span><span class="o"><</span><span class="n">MutableList</span><span class="o"><</span><span class="kt">Int</span><span class="o">>?></span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">ArrayList</span><span class="p">()</span>
|
||||
<a id="__codelineno-25-35" name="__codelineno-25-35" href="#__codelineno-25-35"></a><span class="w"> </span><span class="n">backtrack</span><span class="p">(</span><span class="n">ArrayList</span><span class="p">(),</span><span class="w"> </span><span class="n">nums</span><span class="p">,</span><span class="w"> </span><span class="n">BooleanArray</span><span class="p">(</span><span class="n">nums</span><span class="p">.</span><span class="na">size</span><span class="p">),</span><span class="w"> </span><span class="n">res</span><span class="p">)</span>
|
||||
<a id="__codelineno-25-34" name="__codelineno-25-34" href="#__codelineno-25-34"></a><span class="w"> </span><span class="kd">val</span><span class="w"> </span><span class="nv">res</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">mutableListOf</span><span class="o"><</span><span class="n">MutableList</span><span class="o"><</span><span class="kt">Int</span><span class="o">>?></span><span class="p">()</span>
|
||||
<a id="__codelineno-25-35" name="__codelineno-25-35" href="#__codelineno-25-35"></a><span class="w"> </span><span class="n">backtrack</span><span class="p">(</span><span class="n">mutableListOf</span><span class="p">(),</span><span class="w"> </span><span class="n">nums</span><span class="p">,</span><span class="w"> </span><span class="n">BooleanArray</span><span class="p">(</span><span class="n">nums</span><span class="p">.</span><span class="na">size</span><span class="p">),</span><span class="w"> </span><span class="n">res</span><span class="p">)</span>
|
||||
<a id="__codelineno-25-36" name="__codelineno-25-36" href="#__codelineno-25-36"></a><span class="w"> </span><span class="k">return</span><span class="w"> </span><span class="n">res</span>
|
||||
<a id="__codelineno-25-37" name="__codelineno-25-37" href="#__codelineno-25-37"></a><span class="p">}</span>
|
||||
</code></pre></div>
|
||||
|
||||
@@ -4183,11 +4183,11 @@
|
||||
<a id="__codelineno-11-4" name="__codelineno-11-4" href="#__codelineno-11-4"></a><span class="w"> </span><span class="n">target</span><span class="p">:</span><span class="w"> </span><span class="kt">Int</span><span class="p">,</span>
|
||||
<a id="__codelineno-11-5" name="__codelineno-11-5" href="#__codelineno-11-5"></a><span class="w"> </span><span class="n">total</span><span class="p">:</span><span class="w"> </span><span class="kt">Int</span><span class="p">,</span>
|
||||
<a id="__codelineno-11-6" name="__codelineno-11-6" href="#__codelineno-11-6"></a><span class="w"> </span><span class="n">choices</span><span class="p">:</span><span class="w"> </span><span class="n">IntArray</span><span class="p">,</span>
|
||||
<a id="__codelineno-11-7" name="__codelineno-11-7" href="#__codelineno-11-7"></a><span class="w"> </span><span class="n">res</span><span class="p">:</span><span class="w"> </span><span class="n">MutableList</span><span class="o"><</span><span class="n">List</span><span class="o"><</span><span class="kt">Int</span><span class="o">>?></span>
|
||||
<a id="__codelineno-11-7" name="__codelineno-11-7" href="#__codelineno-11-7"></a><span class="w"> </span><span class="n">res</span><span class="p">:</span><span class="w"> </span><span class="n">MutableList</span><span class="o"><</span><span class="n">MutableList</span><span class="o"><</span><span class="kt">Int</span><span class="o">>?></span>
|
||||
<a id="__codelineno-11-8" name="__codelineno-11-8" href="#__codelineno-11-8"></a><span class="p">)</span><span class="w"> </span><span class="p">{</span>
|
||||
<a id="__codelineno-11-9" name="__codelineno-11-9" href="#__codelineno-11-9"></a><span class="w"> </span><span class="c1">// 子集和等于 target 时,记录解</span>
|
||||
<a id="__codelineno-11-10" name="__codelineno-11-10" href="#__codelineno-11-10"></a><span class="w"> </span><span class="k">if</span><span class="w"> </span><span class="p">(</span><span class="n">total</span><span class="w"> </span><span class="o">==</span><span class="w"> </span><span class="n">target</span><span class="p">)</span><span class="w"> </span><span class="p">{</span>
|
||||
<a id="__codelineno-11-11" name="__codelineno-11-11" href="#__codelineno-11-11"></a><span class="w"> </span><span class="n">res</span><span class="p">.</span><span class="na">add</span><span class="p">(</span><span class="n">ArrayList</span><span class="p">(</span><span class="n">state</span><span class="p">))</span>
|
||||
<a id="__codelineno-11-11" name="__codelineno-11-11" href="#__codelineno-11-11"></a><span class="w"> </span><span class="n">res</span><span class="p">.</span><span class="na">add</span><span class="p">(</span><span class="n">state</span><span class="p">.</span><span class="na">toMutableList</span><span class="p">())</span>
|
||||
<a id="__codelineno-11-12" name="__codelineno-11-12" href="#__codelineno-11-12"></a><span class="w"> </span><span class="k">return</span>
|
||||
<a id="__codelineno-11-13" name="__codelineno-11-13" href="#__codelineno-11-13"></a><span class="w"> </span><span class="p">}</span>
|
||||
<a id="__codelineno-11-14" name="__codelineno-11-14" href="#__codelineno-11-14"></a><span class="w"> </span><span class="c1">// 遍历所有选择</span>
|
||||
@@ -4206,10 +4206,10 @@
|
||||
<a id="__codelineno-11-27" name="__codelineno-11-27" href="#__codelineno-11-27"></a><span class="p">}</span>
|
||||
<a id="__codelineno-11-28" name="__codelineno-11-28" href="#__codelineno-11-28"></a>
|
||||
<a id="__codelineno-11-29" name="__codelineno-11-29" href="#__codelineno-11-29"></a><span class="cm">/* 求解子集和 I(包含重复子集) */</span>
|
||||
<a id="__codelineno-11-30" name="__codelineno-11-30" href="#__codelineno-11-30"></a><span class="kd">fun</span><span class="w"> </span><span class="nf">subsetSumINaive</span><span class="p">(</span><span class="n">nums</span><span class="p">:</span><span class="w"> </span><span class="n">IntArray</span><span class="p">,</span><span class="w"> </span><span class="n">target</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">List</span><span class="o"><</span><span class="n">List</span><span class="o"><</span><span class="kt">Int</span><span class="o">>?></span><span class="w"> </span><span class="p">{</span>
|
||||
<a id="__codelineno-11-31" name="__codelineno-11-31" href="#__codelineno-11-31"></a><span class="w"> </span><span class="kd">val</span><span class="w"> </span><span class="nv">state</span><span class="p">:</span><span class="w"> </span><span class="n">MutableList</span><span class="o"><</span><span class="kt">Int</span><span class="o">></span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">ArrayList</span><span class="p">()</span><span class="w"> </span><span class="c1">// 状态(子集)</span>
|
||||
<a id="__codelineno-11-30" name="__codelineno-11-30" href="#__codelineno-11-30"></a><span class="kd">fun</span><span class="w"> </span><span class="nf">subsetSumINaive</span><span class="p">(</span><span class="n">nums</span><span class="p">:</span><span class="w"> </span><span class="n">IntArray</span><span class="p">,</span><span class="w"> </span><span class="n">target</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">MutableList</span><span class="o"><</span><span class="n">MutableList</span><span class="o"><</span><span class="kt">Int</span><span class="o">>?></span><span class="w"> </span><span class="p">{</span>
|
||||
<a id="__codelineno-11-31" name="__codelineno-11-31" href="#__codelineno-11-31"></a><span class="w"> </span><span class="kd">val</span><span class="w"> </span><span class="nv">state</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">mutableListOf</span><span class="o"><</span><span class="kt">Int</span><span class="o">></span><span class="p">()</span><span class="w"> </span><span class="c1">// 状态(子集)</span>
|
||||
<a id="__codelineno-11-32" name="__codelineno-11-32" href="#__codelineno-11-32"></a><span class="w"> </span><span class="kd">val</span><span class="w"> </span><span class="nv">total</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="m">0</span><span class="w"> </span><span class="c1">// 子集和</span>
|
||||
<a id="__codelineno-11-33" name="__codelineno-11-33" href="#__codelineno-11-33"></a><span class="w"> </span><span class="kd">val</span><span class="w"> </span><span class="nv">res</span><span class="p">:</span><span class="w"> </span><span class="n">MutableList</span><span class="o"><</span><span class="n">List</span><span class="o"><</span><span class="kt">Int</span><span class="o">>?></span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">ArrayList</span><span class="p">()</span><span class="w"> </span><span class="c1">// 结果列表(子集列表)</span>
|
||||
<a id="__codelineno-11-33" name="__codelineno-11-33" href="#__codelineno-11-33"></a><span class="w"> </span><span class="kd">val</span><span class="w"> </span><span class="nv">res</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">mutableListOf</span><span class="o"><</span><span class="n">MutableList</span><span class="o"><</span><span class="kt">Int</span><span class="o">>?></span><span class="p">()</span><span class="w"> </span><span class="c1">// 结果列表(子集列表)</span>
|
||||
<a id="__codelineno-11-34" name="__codelineno-11-34" href="#__codelineno-11-34"></a><span class="w"> </span><span class="n">backtrack</span><span class="p">(</span><span class="n">state</span><span class="p">,</span><span class="w"> </span><span class="n">target</span><span class="p">,</span><span class="w"> </span><span class="n">total</span><span class="p">,</span><span class="w"> </span><span class="n">nums</span><span class="p">,</span><span class="w"> </span><span class="n">res</span><span class="p">)</span>
|
||||
<a id="__codelineno-11-35" name="__codelineno-11-35" href="#__codelineno-11-35"></a><span class="w"> </span><span class="k">return</span><span class="w"> </span><span class="n">res</span>
|
||||
<a id="__codelineno-11-36" name="__codelineno-11-36" href="#__codelineno-11-36"></a><span class="p">}</span>
|
||||
@@ -4689,11 +4689,11 @@
|
||||
<a id="__codelineno-25-4" name="__codelineno-25-4" href="#__codelineno-25-4"></a><span class="w"> </span><span class="n">target</span><span class="p">:</span><span class="w"> </span><span class="kt">Int</span><span class="p">,</span>
|
||||
<a id="__codelineno-25-5" name="__codelineno-25-5" href="#__codelineno-25-5"></a><span class="w"> </span><span class="n">choices</span><span class="p">:</span><span class="w"> </span><span class="n">IntArray</span><span class="p">,</span>
|
||||
<a id="__codelineno-25-6" name="__codelineno-25-6" href="#__codelineno-25-6"></a><span class="w"> </span><span class="n">start</span><span class="p">:</span><span class="w"> </span><span class="kt">Int</span><span class="p">,</span>
|
||||
<a id="__codelineno-25-7" name="__codelineno-25-7" href="#__codelineno-25-7"></a><span class="w"> </span><span class="n">res</span><span class="p">:</span><span class="w"> </span><span class="n">MutableList</span><span class="o"><</span><span class="n">List</span><span class="o"><</span><span class="kt">Int</span><span class="o">>?></span>
|
||||
<a id="__codelineno-25-7" name="__codelineno-25-7" href="#__codelineno-25-7"></a><span class="w"> </span><span class="n">res</span><span class="p">:</span><span class="w"> </span><span class="n">MutableList</span><span class="o"><</span><span class="n">MutableList</span><span class="o"><</span><span class="kt">Int</span><span class="o">>?></span>
|
||||
<a id="__codelineno-25-8" name="__codelineno-25-8" href="#__codelineno-25-8"></a><span class="p">)</span><span class="w"> </span><span class="p">{</span>
|
||||
<a id="__codelineno-25-9" name="__codelineno-25-9" href="#__codelineno-25-9"></a><span class="w"> </span><span class="c1">// 子集和等于 target 时,记录解</span>
|
||||
<a id="__codelineno-25-10" name="__codelineno-25-10" href="#__codelineno-25-10"></a><span class="w"> </span><span class="k">if</span><span class="w"> </span><span class="p">(</span><span class="n">target</span><span class="w"> </span><span class="o">==</span><span class="w"> </span><span class="m">0</span><span class="p">)</span><span class="w"> </span><span class="p">{</span>
|
||||
<a id="__codelineno-25-11" name="__codelineno-25-11" href="#__codelineno-25-11"></a><span class="w"> </span><span class="n">res</span><span class="p">.</span><span class="na">add</span><span class="p">(</span><span class="n">ArrayList</span><span class="p">(</span><span class="n">state</span><span class="p">))</span>
|
||||
<a id="__codelineno-25-11" name="__codelineno-25-11" href="#__codelineno-25-11"></a><span class="w"> </span><span class="n">res</span><span class="p">.</span><span class="na">add</span><span class="p">(</span><span class="n">state</span><span class="p">.</span><span class="na">toMutableList</span><span class="p">())</span>
|
||||
<a id="__codelineno-25-12" name="__codelineno-25-12" href="#__codelineno-25-12"></a><span class="w"> </span><span class="k">return</span>
|
||||
<a id="__codelineno-25-13" name="__codelineno-25-13" href="#__codelineno-25-13"></a><span class="w"> </span><span class="p">}</span>
|
||||
<a id="__codelineno-25-14" name="__codelineno-25-14" href="#__codelineno-25-14"></a><span class="w"> </span><span class="c1">// 遍历所有选择</span>
|
||||
@@ -4714,11 +4714,11 @@
|
||||
<a id="__codelineno-25-29" name="__codelineno-25-29" href="#__codelineno-25-29"></a><span class="p">}</span>
|
||||
<a id="__codelineno-25-30" name="__codelineno-25-30" href="#__codelineno-25-30"></a>
|
||||
<a id="__codelineno-25-31" name="__codelineno-25-31" href="#__codelineno-25-31"></a><span class="cm">/* 求解子集和 I */</span>
|
||||
<a id="__codelineno-25-32" name="__codelineno-25-32" href="#__codelineno-25-32"></a><span class="kd">fun</span><span class="w"> </span><span class="nf">subsetSumI</span><span class="p">(</span><span class="n">nums</span><span class="p">:</span><span class="w"> </span><span class="n">IntArray</span><span class="p">,</span><span class="w"> </span><span class="n">target</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">List</span><span class="o"><</span><span class="n">List</span><span class="o"><</span><span class="kt">Int</span><span class="o">>?></span><span class="w"> </span><span class="p">{</span>
|
||||
<a id="__codelineno-25-33" name="__codelineno-25-33" href="#__codelineno-25-33"></a><span class="w"> </span><span class="kd">val</span><span class="w"> </span><span class="nv">state</span><span class="p">:</span><span class="w"> </span><span class="n">MutableList</span><span class="o"><</span><span class="kt">Int</span><span class="o">></span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">ArrayList</span><span class="p">()</span><span class="w"> </span><span class="c1">// 状态(子集)</span>
|
||||
<a id="__codelineno-25-34" name="__codelineno-25-34" href="#__codelineno-25-34"></a><span class="w"> </span><span class="n">Arrays</span><span class="p">.</span><span class="na">sort</span><span class="p">(</span><span class="n">nums</span><span class="p">)</span><span class="w"> </span><span class="c1">// 对 nums 进行排序</span>
|
||||
<a id="__codelineno-25-32" name="__codelineno-25-32" href="#__codelineno-25-32"></a><span class="kd">fun</span><span class="w"> </span><span class="nf">subsetSumI</span><span class="p">(</span><span class="n">nums</span><span class="p">:</span><span class="w"> </span><span class="n">IntArray</span><span class="p">,</span><span class="w"> </span><span class="n">target</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">MutableList</span><span class="o"><</span><span class="n">MutableList</span><span class="o"><</span><span class="kt">Int</span><span class="o">>?></span><span class="w"> </span><span class="p">{</span>
|
||||
<a id="__codelineno-25-33" name="__codelineno-25-33" href="#__codelineno-25-33"></a><span class="w"> </span><span class="kd">val</span><span class="w"> </span><span class="nv">state</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">mutableListOf</span><span class="o"><</span><span class="kt">Int</span><span class="o">></span><span class="p">()</span><span class="w"> </span><span class="c1">// 状态(子集)</span>
|
||||
<a id="__codelineno-25-34" name="__codelineno-25-34" href="#__codelineno-25-34"></a><span class="w"> </span><span class="n">nums</span><span class="p">.</span><span class="na">sort</span><span class="p">()</span><span class="w"> </span><span class="c1">// 对 nums 进行排序</span>
|
||||
<a id="__codelineno-25-35" name="__codelineno-25-35" href="#__codelineno-25-35"></a><span class="w"> </span><span class="kd">val</span><span class="w"> </span><span class="nv">start</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="m">0</span><span class="w"> </span><span class="c1">// 遍历起始点</span>
|
||||
<a id="__codelineno-25-36" name="__codelineno-25-36" href="#__codelineno-25-36"></a><span class="w"> </span><span class="kd">val</span><span class="w"> </span><span class="nv">res</span><span class="p">:</span><span class="w"> </span><span class="n">MutableList</span><span class="o"><</span><span class="n">List</span><span class="o"><</span><span class="kt">Int</span><span class="o">>?></span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">ArrayList</span><span class="p">()</span><span class="w"> </span><span class="c1">// 结果列表(子集列表)</span>
|
||||
<a id="__codelineno-25-36" name="__codelineno-25-36" href="#__codelineno-25-36"></a><span class="w"> </span><span class="kd">val</span><span class="w"> </span><span class="nv">res</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">mutableListOf</span><span class="o"><</span><span class="n">MutableList</span><span class="o"><</span><span class="kt">Int</span><span class="o">>?></span><span class="p">()</span><span class="w"> </span><span class="c1">// 结果列表(子集列表)</span>
|
||||
<a id="__codelineno-25-37" name="__codelineno-25-37" href="#__codelineno-25-37"></a><span class="w"> </span><span class="n">backtrack</span><span class="p">(</span><span class="n">state</span><span class="p">,</span><span class="w"> </span><span class="n">target</span><span class="p">,</span><span class="w"> </span><span class="n">nums</span><span class="p">,</span><span class="w"> </span><span class="n">start</span><span class="p">,</span><span class="w"> </span><span class="n">res</span><span class="p">)</span>
|
||||
<a id="__codelineno-25-38" name="__codelineno-25-38" href="#__codelineno-25-38"></a><span class="w"> </span><span class="k">return</span><span class="w"> </span><span class="n">res</span>
|
||||
<a id="__codelineno-25-39" name="__codelineno-25-39" href="#__codelineno-25-39"></a><span class="p">}</span>
|
||||
@@ -5237,11 +5237,11 @@
|
||||
<a id="__codelineno-39-4" name="__codelineno-39-4" href="#__codelineno-39-4"></a><span class="w"> </span><span class="n">target</span><span class="p">:</span><span class="w"> </span><span class="kt">Int</span><span class="p">,</span>
|
||||
<a id="__codelineno-39-5" name="__codelineno-39-5" href="#__codelineno-39-5"></a><span class="w"> </span><span class="n">choices</span><span class="p">:</span><span class="w"> </span><span class="n">IntArray</span><span class="p">,</span>
|
||||
<a id="__codelineno-39-6" name="__codelineno-39-6" href="#__codelineno-39-6"></a><span class="w"> </span><span class="n">start</span><span class="p">:</span><span class="w"> </span><span class="kt">Int</span><span class="p">,</span>
|
||||
<a id="__codelineno-39-7" name="__codelineno-39-7" href="#__codelineno-39-7"></a><span class="w"> </span><span class="n">res</span><span class="p">:</span><span class="w"> </span><span class="n">MutableList</span><span class="o"><</span><span class="n">List</span><span class="o"><</span><span class="kt">Int</span><span class="o">>?></span>
|
||||
<a id="__codelineno-39-7" name="__codelineno-39-7" href="#__codelineno-39-7"></a><span class="w"> </span><span class="n">res</span><span class="p">:</span><span class="w"> </span><span class="n">MutableList</span><span class="o"><</span><span class="n">MutableList</span><span class="o"><</span><span class="kt">Int</span><span class="o">>?></span>
|
||||
<a id="__codelineno-39-8" name="__codelineno-39-8" href="#__codelineno-39-8"></a><span class="p">)</span><span class="w"> </span><span class="p">{</span>
|
||||
<a id="__codelineno-39-9" name="__codelineno-39-9" href="#__codelineno-39-9"></a><span class="w"> </span><span class="c1">// 子集和等于 target 时,记录解</span>
|
||||
<a id="__codelineno-39-10" name="__codelineno-39-10" href="#__codelineno-39-10"></a><span class="w"> </span><span class="k">if</span><span class="w"> </span><span class="p">(</span><span class="n">target</span><span class="w"> </span><span class="o">==</span><span class="w"> </span><span class="m">0</span><span class="p">)</span><span class="w"> </span><span class="p">{</span>
|
||||
<a id="__codelineno-39-11" name="__codelineno-39-11" href="#__codelineno-39-11"></a><span class="w"> </span><span class="n">res</span><span class="p">.</span><span class="na">add</span><span class="p">(</span><span class="n">ArrayList</span><span class="p">(</span><span class="n">state</span><span class="p">))</span>
|
||||
<a id="__codelineno-39-11" name="__codelineno-39-11" href="#__codelineno-39-11"></a><span class="w"> </span><span class="n">res</span><span class="p">.</span><span class="na">add</span><span class="p">(</span><span class="n">state</span><span class="p">.</span><span class="na">toMutableList</span><span class="p">())</span>
|
||||
<a id="__codelineno-39-12" name="__codelineno-39-12" href="#__codelineno-39-12"></a><span class="w"> </span><span class="k">return</span>
|
||||
<a id="__codelineno-39-13" name="__codelineno-39-13" href="#__codelineno-39-13"></a><span class="w"> </span><span class="p">}</span>
|
||||
<a id="__codelineno-39-14" name="__codelineno-39-14" href="#__codelineno-39-14"></a><span class="w"> </span><span class="c1">// 遍历所有选择</span>
|
||||
@@ -5267,11 +5267,11 @@
|
||||
<a id="__codelineno-39-34" name="__codelineno-39-34" href="#__codelineno-39-34"></a><span class="p">}</span>
|
||||
<a id="__codelineno-39-35" name="__codelineno-39-35" href="#__codelineno-39-35"></a>
|
||||
<a id="__codelineno-39-36" name="__codelineno-39-36" href="#__codelineno-39-36"></a><span class="cm">/* 求解子集和 II */</span>
|
||||
<a id="__codelineno-39-37" name="__codelineno-39-37" href="#__codelineno-39-37"></a><span class="kd">fun</span><span class="w"> </span><span class="nf">subsetSumII</span><span class="p">(</span><span class="n">nums</span><span class="p">:</span><span class="w"> </span><span class="n">IntArray</span><span class="p">,</span><span class="w"> </span><span class="n">target</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">List</span><span class="o"><</span><span class="n">List</span><span class="o"><</span><span class="kt">Int</span><span class="o">>?></span><span class="w"> </span><span class="p">{</span>
|
||||
<a id="__codelineno-39-38" name="__codelineno-39-38" href="#__codelineno-39-38"></a><span class="w"> </span><span class="kd">val</span><span class="w"> </span><span class="nv">state</span><span class="p">:</span><span class="w"> </span><span class="n">MutableList</span><span class="o"><</span><span class="kt">Int</span><span class="o">></span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">ArrayList</span><span class="p">()</span><span class="w"> </span><span class="c1">// 状态(子集)</span>
|
||||
<a id="__codelineno-39-39" name="__codelineno-39-39" href="#__codelineno-39-39"></a><span class="w"> </span><span class="n">Arrays</span><span class="p">.</span><span class="na">sort</span><span class="p">(</span><span class="n">nums</span><span class="p">)</span><span class="w"> </span><span class="c1">// 对 nums 进行排序</span>
|
||||
<a id="__codelineno-39-37" name="__codelineno-39-37" href="#__codelineno-39-37"></a><span class="kd">fun</span><span class="w"> </span><span class="nf">subsetSumII</span><span class="p">(</span><span class="n">nums</span><span class="p">:</span><span class="w"> </span><span class="n">IntArray</span><span class="p">,</span><span class="w"> </span><span class="n">target</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">MutableList</span><span class="o"><</span><span class="n">MutableList</span><span class="o"><</span><span class="kt">Int</span><span class="o">>?></span><span class="w"> </span><span class="p">{</span>
|
||||
<a id="__codelineno-39-38" name="__codelineno-39-38" href="#__codelineno-39-38"></a><span class="w"> </span><span class="kd">val</span><span class="w"> </span><span class="nv">state</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">mutableListOf</span><span class="o"><</span><span class="kt">Int</span><span class="o">></span><span class="p">()</span><span class="w"> </span><span class="c1">// 状态(子集)</span>
|
||||
<a id="__codelineno-39-39" name="__codelineno-39-39" href="#__codelineno-39-39"></a><span class="w"> </span><span class="n">nums</span><span class="p">.</span><span class="na">sort</span><span class="p">()</span><span class="w"> </span><span class="c1">// 对 nums 进行排序</span>
|
||||
<a id="__codelineno-39-40" name="__codelineno-39-40" href="#__codelineno-39-40"></a><span class="w"> </span><span class="kd">val</span><span class="w"> </span><span class="nv">start</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="m">0</span><span class="w"> </span><span class="c1">// 遍历起始点</span>
|
||||
<a id="__codelineno-39-41" name="__codelineno-39-41" href="#__codelineno-39-41"></a><span class="w"> </span><span class="kd">val</span><span class="w"> </span><span class="nv">res</span><span class="p">:</span><span class="w"> </span><span class="n">MutableList</span><span class="o"><</span><span class="n">List</span><span class="o"><</span><span class="kt">Int</span><span class="o">>?></span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">ArrayList</span><span class="p">()</span><span class="w"> </span><span class="c1">// 结果列表(子集列表)</span>
|
||||
<a id="__codelineno-39-41" name="__codelineno-39-41" href="#__codelineno-39-41"></a><span class="w"> </span><span class="kd">val</span><span class="w"> </span><span class="nv">res</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">mutableListOf</span><span class="o"><</span><span class="n">MutableList</span><span class="o"><</span><span class="kt">Int</span><span class="o">>?></span><span class="p">()</span><span class="w"> </span><span class="c1">// 结果列表(子集列表)</span>
|
||||
<a id="__codelineno-39-42" name="__codelineno-39-42" href="#__codelineno-39-42"></a><span class="w"> </span><span class="n">backtrack</span><span class="p">(</span><span class="n">state</span><span class="p">,</span><span class="w"> </span><span class="n">target</span><span class="p">,</span><span class="w"> </span><span class="n">nums</span><span class="p">,</span><span class="w"> </span><span class="n">start</span><span class="p">,</span><span class="w"> </span><span class="n">res</span><span class="p">)</span>
|
||||
<a id="__codelineno-39-43" name="__codelineno-39-43" href="#__codelineno-39-43"></a><span class="w"> </span><span class="k">return</span><span class="w"> </span><span class="n">res</span>
|
||||
<a id="__codelineno-39-44" name="__codelineno-39-44" href="#__codelineno-39-44"></a><span class="p">}</span>
|
||||
|
||||
Reference in New Issue
Block a user