@@ -75503,7 +75503,7 @@ <h2 id="description">Description</h2>
75503
75503
75504
75504
<h2 id="solutions">Solutions</h2>
75505
75505
<h3 id="solution-1">Solution 1</h3>
75506
- <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>
75506
+ <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">TypeScript </label></div>
75507
75507
<div class="tabbed-content">
75508
75508
<div class="tabbed-block">
75509
75509
<div class="highlight"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><span></span><span class="normal"> 1</span>
@@ -75867,6 +75867,108 @@ <h3 id="solution-1">Solution 1</h3>
75867
75867
<span class="p">}</span>
75868
75868
</code></pre></div></td></tr></table></div>
75869
75869
</div>
75870
+ <div class="tabbed-block">
75871
+ <div class="highlight"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><span></span><span class="normal"> 1</span>
75872
+ <span class="normal"> 2</span>
75873
+ <span class="normal"> 3</span>
75874
+ <span class="normal"> 4</span>
75875
+ <span class="normal"> 5</span>
75876
+ <span class="normal"> 6</span>
75877
+ <span class="normal"> 7</span>
75878
+ <span class="normal"> 8</span>
75879
+ <span class="normal"> 9</span>
75880
+ <span class="normal">10</span>
75881
+ <span class="normal">11</span>
75882
+ <span class="normal">12</span>
75883
+ <span class="normal">13</span>
75884
+ <span class="normal">14</span>
75885
+ <span class="normal">15</span>
75886
+ <span class="normal">16</span>
75887
+ <span class="normal">17</span>
75888
+ <span class="normal">18</span>
75889
+ <span class="normal">19</span>
75890
+ <span class="normal">20</span>
75891
+ <span class="normal">21</span>
75892
+ <span class="normal">22</span>
75893
+ <span class="normal">23</span>
75894
+ <span class="normal">24</span>
75895
+ <span class="normal">25</span>
75896
+ <span class="normal">26</span>
75897
+ <span class="normal">27</span>
75898
+ <span class="normal">28</span>
75899
+ <span class="normal">29</span>
75900
+ <span class="normal">30</span>
75901
+ <span class="normal">31</span>
75902
+ <span class="normal">32</span>
75903
+ <span class="normal">33</span>
75904
+ <span class="normal">34</span>
75905
+ <span class="normal">35</span>
75906
+ <span class="normal">36</span>
75907
+ <span class="normal">37</span>
75908
+ <span class="normal">38</span>
75909
+ <span class="normal">39</span>
75910
+ <span class="normal">40</span>
75911
+ <span class="normal">41</span>
75912
+ <span class="normal">42</span>
75913
+ <span class="normal">43</span>
75914
+ <span class="normal">44</span>
75915
+ <span class="normal">45</span>
75916
+ <span class="normal">46</span>
75917
+ <span class="normal">47</span>
75918
+ <span class="normal">48</span>
75919
+ <span class="normal">49</span>
75920
+ <span class="normal">50</span></pre></div></td><td class="code"><div><pre><span></span><code><span class="kd">function</span><span class="w"> </span><span class="nx">maxPower</span><span class="p">(</span><span class="nx">stations</span><span class="o">:</span><span class="w"> </span><span class="kt">number</span><span class="p">[],</span><span class="w"> </span><span class="nx">r</span><span class="o">:</span><span class="w"> </span><span class="kt">number</span><span class="p">,</span><span class="w"> </span><span class="nx">k</span><span class="o">:</span><span class="w"> </span><span class="kt">number</span><span class="p">)</span><span class="o">:</span><span class="w"> </span><span class="kt">number</span><span class="w"> </span><span class="p">{</span>
75921
+ <span class="w"> </span><span class="kd">function</span><span class="w"> </span><span class="nx">check</span><span class="p">(</span><span class="nx">x</span><span class="o">:</span><span class="w"> </span><span class="kt">bigint</span><span class="p">,</span><span class="w"> </span><span class="nx">k</span><span class="o">:</span><span class="w"> </span><span class="kt">bigint</span><span class="p">)</span><span class="o">:</span><span class="w"> </span><span class="kt">boolean</span><span class="w"> </span><span class="p">{</span>
75922
+ <span class="w"> </span><span class="nx">d</span><span class="p">.</span><span class="nx">fill</span><span class="p">(</span><span class="mi">0n</span><span class="p">);</span>
75923
+ <span class="w"> </span><span class="kd">let</span><span class="w"> </span><span class="nx">t</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="mi">0n</span><span class="p">;</span>
75924
+ <span class="w"> </span><span class="k">for</span><span class="w"> </span><span class="p">(</span><span class="kd">let</span><span class="w"> </span><span class="nx">i</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="mf">0</span><span class="p">;</span><span class="w"> </span><span class="nx">i</span><span class="w"> </span><span class="o"><</span><span class="w"> </span><span class="nx">n</span><span class="p">;</span><span class="w"> </span><span class="o">++</span><span class="nx">i</span><span class="p">)</span><span class="w"> </span><span class="p">{</span>
75925
+ <span class="w"> </span><span class="nx">t</span><span class="w"> </span><span class="o">+=</span><span class="w"> </span><span class="nx">d</span><span class="p">[</span><span class="nx">i</span><span class="p">];</span>
75926
+ <span class="w"> </span><span class="kd">const</span><span class="w"> </span><span class="nx">dist</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="nx">x</span><span class="w"> </span><span class="o">-</span><span class="w"> </span><span class="p">(</span><span class="nx">s</span><span class="p">[</span><span class="nx">i</span><span class="p">]</span><span class="w"> </span><span class="o">+</span><span class="w"> </span><span class="nx">t</span><span class="p">);</span>
75927
+ <span class="w"> </span><span class="k">if</span><span class="w"> </span><span class="p">(</span><span class="nx">dist</span><span class="w"> </span><span class="o">></span><span class="w"> </span><span class="mf">0</span><span class="p">)</span><span class="w"> </span><span class="p">{</span>
75928
+ <span class="w"> </span><span class="k">if</span><span class="w"> </span><span class="p">(</span><span class="nx">k</span><span class="w"> </span><span class="o"><</span><span class="w"> </span><span class="nx">dist</span><span class="p">)</span><span class="w"> </span><span class="p">{</span>
75929
+ <span class="w"> </span><span class="k">return</span><span class="w"> </span><span class="kc">false</span><span class="p">;</span>
75930
+ <span class="w"> </span><span class="p">}</span>
75931
+ <span class="w"> </span><span class="nx">k</span><span class="w"> </span><span class="o">-=</span><span class="w"> </span><span class="nx">dist</span><span class="p">;</span>
75932
+ <span class="w"> </span><span class="kd">const</span><span class="w"> </span><span class="nx">j</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="nb">Math</span><span class="p">.</span><span class="nx">min</span><span class="p">(</span><span class="nx">i</span><span class="w"> </span><span class="o">+</span><span class="w"> </span><span class="nx">r</span><span class="p">,</span><span class="w"> </span><span class="nx">n</span><span class="w"> </span><span class="o">-</span><span class="w"> </span><span class="mf">1</span><span class="p">);</span>
75933
+ <span class="w"> </span><span class="kd">const</span><span class="w"> </span><span class="nx">left</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="nb">Math</span><span class="p">.</span><span class="nx">max</span><span class="p">(</span><span class="mf">0</span><span class="p">,</span><span class="w"> </span><span class="nx">j</span><span class="w"> </span><span class="o">-</span><span class="w"> </span><span class="nx">r</span><span class="p">);</span>
75934
+ <span class="w"> </span><span class="kd">const</span><span class="w"> </span><span class="nx">right</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="nb">Math</span><span class="p">.</span><span class="nx">min</span><span class="p">(</span><span class="nx">j</span><span class="w"> </span><span class="o">+</span><span class="w"> </span><span class="nx">r</span><span class="p">,</span><span class="w"> </span><span class="nx">n</span><span class="w"> </span><span class="o">-</span><span class="w"> </span><span class="mf">1</span><span class="p">);</span>
75935
+ <span class="w"> </span><span class="nx">d</span><span class="p">[</span><span class="nx">left</span><span class="p">]</span><span class="w"> </span><span class="o">+=</span><span class="w"> </span><span class="nx">dist</span><span class="p">;</span>
75936
+ <span class="w"> </span><span class="nx">d</span><span class="p">[</span><span class="nx">right</span><span class="w"> </span><span class="o">+</span><span class="w"> </span><span class="mf">1</span><span class="p">]</span><span class="w"> </span><span class="o">-=</span><span class="w"> </span><span class="nx">dist</span><span class="p">;</span>
75937
+ <span class="w"> </span><span class="nx">t</span><span class="w"> </span><span class="o">+=</span><span class="w"> </span><span class="nx">dist</span><span class="p">;</span>
75938
+ <span class="w"> </span><span class="p">}</span>
75939
+ <span class="w"> </span><span class="p">}</span>
75940
+ <span class="w"> </span><span class="k">return</span><span class="w"> </span><span class="kc">true</span><span class="p">;</span>
75941
+ <span class="w"> </span><span class="p">}</span>
75942
+ <span class="w"> </span><span class="kd">const</span><span class="w"> </span><span class="nx">n</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="nx">stations</span><span class="p">.</span><span class="nx">length</span><span class="p">;</span>
75943
+ <span class="w"> </span><span class="kd">const</span><span class="w"> </span><span class="nx">d</span><span class="o">:</span><span class="w"> </span><span class="kt">bigint</span><span class="p">[]</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="ow">new</span><span class="w"> </span><span class="nb">Array</span><span class="p">(</span><span class="nx">n</span><span class="w"> </span><span class="o">+</span><span class="w"> </span><span class="mf">1</span><span class="p">).</span><span class="nx">fill</span><span class="p">(</span><span class="mi">0n</span><span class="p">);</span>
75944
+ <span class="w"> </span><span class="kd">const</span><span class="w"> </span><span class="nx">s</span><span class="o">:</span><span class="w"> </span><span class="kt">bigint</span><span class="p">[]</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="ow">new</span><span class="w"> </span><span class="nb">Array</span><span class="p">(</span><span class="nx">n</span><span class="w"> </span><span class="o">+</span><span class="w"> </span><span class="mf">1</span><span class="p">).</span><span class="nx">fill</span><span class="p">(</span><span class="mi">0n</span><span class="p">);</span>
75945
+
75946
+ <span class="w"> </span><span class="k">for</span><span class="w"> </span><span class="p">(</span><span class="kd">let</span><span class="w"> </span><span class="nx">i</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="mf">0</span><span class="p">;</span><span class="w"> </span><span class="nx">i</span><span class="w"> </span><span class="o"><</span><span class="w"> </span><span class="nx">n</span><span class="p">;</span><span class="w"> </span><span class="o">++</span><span class="nx">i</span><span class="p">)</span><span class="w"> </span><span class="p">{</span>
75947
+ <span class="w"> </span><span class="kd">const</span><span class="w"> </span><span class="nx">left</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="nb">Math</span><span class="p">.</span><span class="nx">max</span><span class="p">(</span><span class="mf">0</span><span class="p">,</span><span class="w"> </span><span class="nx">i</span><span class="w"> </span><span class="o">-</span><span class="w"> </span><span class="nx">r</span><span class="p">);</span>
75948
+ <span class="w"> </span><span class="kd">const</span><span class="w"> </span><span class="nx">right</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="nb">Math</span><span class="p">.</span><span class="nx">min</span><span class="p">(</span><span class="nx">i</span><span class="w"> </span><span class="o">+</span><span class="w"> </span><span class="nx">r</span><span class="p">,</span><span class="w"> </span><span class="nx">n</span><span class="w"> </span><span class="o">-</span><span class="w"> </span><span class="mf">1</span><span class="p">);</span>
75949
+ <span class="w"> </span><span class="nx">d</span><span class="p">[</span><span class="nx">left</span><span class="p">]</span><span class="w"> </span><span class="o">+=</span><span class="w"> </span><span class="nb">BigInt</span><span class="p">(</span><span class="nx">stations</span><span class="p">[</span><span class="nx">i</span><span class="p">]);</span>
75950
+ <span class="w"> </span><span class="nx">d</span><span class="p">[</span><span class="nx">right</span><span class="w"> </span><span class="o">+</span><span class="w"> </span><span class="mf">1</span><span class="p">]</span><span class="w"> </span><span class="o">-=</span><span class="w"> </span><span class="nb">BigInt</span><span class="p">(</span><span class="nx">stations</span><span class="p">[</span><span class="nx">i</span><span class="p">]);</span>
75951
+ <span class="w"> </span><span class="p">}</span>
75952
+
75953
+ <span class="w"> </span><span class="nx">s</span><span class="p">[</span><span class="mf">0</span><span class="p">]</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="nx">d</span><span class="p">[</span><span class="mf">0</span><span class="p">];</span>
75954
+ <span class="w"> </span><span class="k">for</span><span class="w"> </span><span class="p">(</span><span class="kd">let</span><span class="w"> </span><span class="nx">i</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="mf">1</span><span class="p">;</span><span class="w"> </span><span class="nx">i</span><span class="w"> </span><span class="o"><</span><span class="w"> </span><span class="nx">n</span><span class="w"> </span><span class="o">+</span><span class="w"> </span><span class="mf">1</span><span class="p">;</span><span class="w"> </span><span class="o">++</span><span class="nx">i</span><span class="p">)</span><span class="w"> </span><span class="p">{</span>
75955
+ <span class="w"> </span><span class="nx">s</span><span class="p">[</span><span class="nx">i</span><span class="p">]</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="nx">s</span><span class="p">[</span><span class="nx">i</span><span class="w"> </span><span class="o">-</span><span class="w"> </span><span class="mf">1</span><span class="p">]</span><span class="w"> </span><span class="o">+</span><span class="w"> </span><span class="nx">d</span><span class="p">[</span><span class="nx">i</span><span class="p">];</span>
75956
+ <span class="w"> </span><span class="p">}</span>
75957
+
75958
+ <span class="w"> </span><span class="kd">let</span><span class="w"> </span><span class="nx">left</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="mi">0n</span><span class="p">,</span>
75959
+ <span class="w"> </span><span class="nx">right</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="mi">1n</span><span class="w"> </span><span class="o"><<</span><span class="w"> </span><span class="mi">40n</span><span class="p">;</span>
75960
+ <span class="w"> </span><span class="k">while</span><span class="w"> </span><span class="p">(</span><span class="nx">left</span><span class="w"> </span><span class="o"><</span><span class="w"> </span><span class="nx">right</span><span class="p">)</span><span class="w"> </span><span class="p">{</span>
75961
+ <span class="w"> </span><span class="kd">const</span><span class="w"> </span><span class="nx">mid</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="p">(</span><span class="nx">left</span><span class="w"> </span><span class="o">+</span><span class="w"> </span><span class="nx">right</span><span class="w"> </span><span class="o">+</span><span class="w"> </span><span class="mi">1n</span><span class="p">)</span><span class="w"> </span><span class="o">>></span><span class="w"> </span><span class="mi">1n</span><span class="p">;</span>
75962
+ <span class="w"> </span><span class="k">if</span><span class="w"> </span><span class="p">(</span><span class="nx">check</span><span class="p">(</span><span class="nx">mid</span><span class="p">,</span><span class="w"> </span><span class="nb">BigInt</span><span class="p">(</span><span class="nx">k</span><span class="p">)))</span><span class="w"> </span><span class="p">{</span>
75963
+ <span class="w"> </span><span class="nx">left</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="nx">mid</span><span class="p">;</span>
75964
+ <span class="w"> </span><span class="p">}</span><span class="w"> </span><span class="k">else</span><span class="w"> </span><span class="p">{</span>
75965
+ <span class="w"> </span><span class="nx">right</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="nx">mid</span><span class="w"> </span><span class="o">-</span><span class="w"> </span><span class="mi">1n</span><span class="p">;</span>
75966
+ <span class="w"> </span><span class="p">}</span>
75967
+ <span class="w"> </span><span class="p">}</span>
75968
+ <span class="w"> </span><span class="k">return</span><span class="w"> </span><span class="nb">Number</span><span class="p">(</span><span class="nx">left</span><span class="p">);</span>
75969
+ <span class="p">}</span>
75970
+ </code></pre></div></td></tr></table></div>
75971
+ </div>
75870
75972
</div>
75871
75973
</div>
75872
75974
<!-- end -->
@@ -75898,6 +76000,11 @@ <h3 id="solution-1">Solution 1</h3>
75898
76000
75899
76001
<nav>
75900
76002
76003
+ <a href="https://github.com/cblh" class="md-author" title="@cblh">
76004
+
76005
+ <img src="https://avatars.githubusercontent.com/u/4357401?v=4&size=72" alt="cblh">
76006
+ </a>
76007
+
75901
76008
<a href="https://github.com/yanglbme" class="md-author" title="@yanglbme">
75902
76009
75903
76010
<img src="https://avatars.githubusercontent.com/u/21008209?v=4&size=72" alt="yanglbme">
0 commit comments