Skip to content

Commit a610eb0

Browse files
committed
deploy: b335300
1 parent 9e91bdf commit a610eb0

File tree

10 files changed

+288
-98
lines changed

10 files changed

+288
-98
lines changed

en/lc/1295/index.html

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

en/lc/1297/index.html

Lines changed: 34 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -34391,9 +34391,9 @@
3439134391
<ul class="md-nav__list">
3439234392

3439334393
<li class="md-nav__item">
34394-
<a href="#solution-1" class="md-nav__link">
34394+
<a href="#solution-1-hash-table-enumeration" class="md-nav__link">
3439534395
<span class="md-ellipsis">
34396-
Solution 1
34396+
Solution 1: Hash Table + Enumeration
3439734397
</span>
3439834398
</a>
3439934399

@@ -79454,8 +79454,10 @@ <h2 id="description">Description</h2>
7945479454
<h2 id="solutions">Solutions</h2>
7945579455
<!-- solution:start -->
7945679456

79457-
<h3 id="solution-1">Solution 1</h3>
79458-
<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>
79457+
<h3 id="solution-1-hash-table-enumeration">Solution 1: Hash Table + Enumeration</h3>
79458+
<p>According to the problem description, if a long string meets the condition, then its substring of length $\textit{minSize}$ must also meet the condition. Therefore, we only need to enumerate all substrings of length $\textit{minSize}$ in $s$, then use a hash table to record the occurrence frequency of all substrings, and find the maximum frequency as the answer.</p>
79459+
<p>The time complexity is $O(n \times m)$, and the space complexity is $O(n \times m)$. Here, $n$ and $m$ are the lengths of the string $s$ and $\textit{minSize}$, respectively. In this problem, $m$ does not exceed $26$.</p>
79460+
<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>
7945979461
<div class="tabbed-content">
7946079462
<div class="tabbed-block">
7946179463
<div class="highlight"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><span></span><span class="normal"> 1</span>
@@ -79587,6 +79589,34 @@ <h3 id="solution-1">Solution 1</h3>
7958779589
<span class="p">}</span>
7958879590
</code></pre></div></td></tr></table></div>
7958979591
</div>
79592+
<div class="tabbed-block">
79593+
<div class="highlight"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><span></span><span class="normal"> 1</span>
79594+
<span class="normal"> 2</span>
79595+
<span class="normal"> 3</span>
79596+
<span class="normal"> 4</span>
79597+
<span class="normal"> 5</span>
79598+
<span class="normal"> 6</span>
79599+
<span class="normal"> 7</span>
79600+
<span class="normal"> 8</span>
79601+
<span class="normal"> 9</span>
79602+
<span class="normal">10</span>
79603+
<span class="normal">11</span>
79604+
<span class="normal">12</span>
79605+
<span class="normal">13</span></pre></div></td><td class="code"><div><pre><span></span><code><span class="kd">function</span><span class="w"> </span><span class="nx">maxFreq</span><span class="p">(</span><span class="nx">s</span><span class="o">:</span><span class="w"> </span><span class="kt">string</span><span class="p">,</span><span class="w"> </span><span class="nx">maxLetters</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">minSize</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">maxSize</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>
79606+
<span class="w"> </span><span class="kd">const</span><span class="w"> </span><span class="nx">cnt</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">Map</span><span class="o">&lt;</span><span class="kt">string</span><span class="p">,</span><span class="w"> </span><span class="kt">number</span><span class="o">&gt;</span><span class="p">();</span>
79607+
<span class="w"> </span><span class="kd">let</span><span class="w"> </span><span class="nx">ans</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="mf">0</span><span class="p">;</span>
79608+
<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">&lt;</span><span class="w"> </span><span class="nx">s</span><span class="p">.</span><span class="nx">length</span><span class="w"> </span><span class="o">-</span><span class="w"> </span><span class="nx">minSize</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>
79609+
<span class="w"> </span><span class="kd">const</span><span class="w"> </span><span class="nx">t</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">slice</span><span class="p">(</span><span class="nx">i</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">minSize</span><span class="p">);</span>
79610+
<span class="w"> </span><span class="kd">const</span><span class="w"> </span><span class="nx">ss</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">Set</span><span class="p">(</span><span class="nx">t</span><span class="p">.</span><span class="nx">split</span><span class="p">(</span><span class="s1">&#39;&#39;</span><span class="p">));</span>
79611+
<span class="w"> </span><span class="k">if</span><span class="w"> </span><span class="p">(</span><span class="nx">ss</span><span class="p">.</span><span class="nx">size</span><span class="w"> </span><span class="o">&lt;=</span><span class="w"> </span><span class="nx">maxLetters</span><span class="p">)</span><span class="w"> </span><span class="p">{</span>
79612+
<span class="w"> </span><span class="nx">cnt</span><span class="p">.</span><span class="nx">set</span><span class="p">(</span><span class="nx">t</span><span class="p">,</span><span class="w"> </span><span class="p">(</span><span class="nx">cnt</span><span class="p">.</span><span class="nx">get</span><span class="p">(</span><span class="nx">t</span><span class="p">)</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="o">+</span><span class="w"> </span><span class="mf">1</span><span class="p">);</span>
79613+
<span class="w"> </span><span class="nx">ans</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="nx">ans</span><span class="p">,</span><span class="w"> </span><span class="nx">cnt</span><span class="p">.</span><span class="nx">get</span><span class="p">(</span><span class="nx">t</span><span class="p">)</span><span class="o">!</span><span class="p">);</span>
79614+
<span class="w"> </span><span class="p">}</span>
79615+
<span class="w"> </span><span class="p">}</span>
79616+
<span class="w"> </span><span class="k">return</span><span class="w"> </span><span class="nx">ans</span><span class="p">;</span>
79617+
<span class="p">}</span>
79618+
</code></pre></div></td></tr></table></div>
79619+
</div>
7959079620
</div>
7959179621
</div>
7959279622
<!-- solution:end -->

0 commit comments

Comments
 (0)