Skip to content

Commit 132a001

Browse files
committed
deploy: bdab969
1 parent 2a68bc7 commit 132a001

File tree

10 files changed

+8027
-6903
lines changed

10 files changed

+8027
-6903
lines changed

en/lc/2288/index.html

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -54952,9 +54952,9 @@
5495254952
<ul class="md-nav__list">
5495354953

5495454954
<li class="md-nav__item">
54955-
<a href="#solution-1" class="md-nav__link">
54955+
<a href="#solution-1-simulation" class="md-nav__link">
5495654956
<span class="md-ellipsis">
54957-
Solution 1
54957+
Solution 1: Simulation
5495854958
</span>
5495954959
</a>
5496054960

@@ -76580,7 +76580,9 @@ <h2 id="description">Description</h2>
7658076580
<h2 id="solutions">Solutions</h2>
7658176581
<!-- solution:start -->
7658276582

76583-
<h3 id="solution-1">Solution 1</h3>
76583+
<h3 id="solution-1-simulation">Solution 1: Simulation</h3>
76584+
<p>We can split the sentence into an array of words by spaces, then iterate through the array of words. For each word, if it represents a price, we update it to the price after applying the discount. Finally, we concatenate the updated array of words into a space-separated string.</p>
76585+
<p>The time complexity is $O(n)$, and the space complexity is $O(n)$. Here, $n$ is the length of the string <code>sentence</code>.</p>
7658476586
<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>
7658576587
<div class="tabbed-content">
7658676588
<div class="tabbed-block">
@@ -76754,14 +76756,14 @@ <h3 id="solution-1">Solution 1</h3>
7675476756
<span class="normal">10</span>
7675576757
<span class="normal">11</span></pre></div></td><td class="code"><div><pre><span></span><code><span class="kd">function</span><span class="w"> </span><span class="nx">discountPrices</span><span class="p">(</span><span class="nx">sentence</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">discount</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">string</span><span class="w"> </span><span class="p">{</span>
7675676758
<span class="w"> </span><span class="kd">const</span><span class="w"> </span><span class="nx">sell</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="p">(</span><span class="mf">100</span><span class="w"> </span><span class="o">-</span><span class="w"> </span><span class="nx">discount</span><span class="p">)</span><span class="w"> </span><span class="o">/</span><span class="w"> </span><span class="mf">100</span><span class="p">;</span>
76757-
<span class="w"> </span><span class="kd">let</span><span class="w"> </span><span class="nx">reg</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">RegExp</span><span class="p">(</span><span class="sr">/^(\$)(([1-9]\d*\.?\d*)|(0\.\d*))$/g</span><span class="p">);</span>
76758-
<span class="w"> </span><span class="kd">let</span><span class="w"> </span><span class="nx">arr</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="nx">sentence</span><span class="p">.</span><span class="nx">split</span><span class="p">(</span><span class="s1">&#39; &#39;</span><span class="p">).</span><span class="nx">map</span><span class="p">(</span><span class="nx">d</span><span class="w"> </span><span class="p">=&gt;</span><span class="w"> </span><span class="p">{</span>
76759+
<span class="w"> </span><span class="kd">const</span><span class="w"> </span><span class="nx">reg</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">RegExp</span><span class="p">(</span><span class="sr">/^(\$)(([1-9]\d*\.?\d*)|(0\.\d*))$/g</span><span class="p">);</span>
76760+
<span class="w"> </span><span class="kd">const</span><span class="w"> </span><span class="nx">words</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="nx">sentence</span><span class="p">.</span><span class="nx">split</span><span class="p">(</span><span class="s1">&#39; &#39;</span><span class="p">).</span><span class="nx">map</span><span class="p">(</span><span class="nx">d</span><span class="w"> </span><span class="p">=&gt;</span><span class="w"> </span><span class="p">{</span>
7675976761
<span class="w"> </span><span class="k">if</span><span class="w"> </span><span class="p">(</span><span class="o">!</span><span class="nx">reg</span><span class="p">.</span><span class="nx">test</span><span class="p">(</span><span class="nx">d</span><span class="p">))</span><span class="w"> </span><span class="k">return</span><span class="w"> </span><span class="nx">d</span><span class="p">;</span>
7676076762
<span class="w"> </span><span class="k">return</span><span class="w"> </span><span class="nx">d</span><span class="p">.</span><span class="nx">replace</span><span class="p">(</span><span class="nx">reg</span><span class="p">,</span><span class="w"> </span><span class="p">(</span><span class="nx">s</span><span class="p">,</span><span class="w"> </span><span class="nx">$1</span><span class="p">,</span><span class="w"> </span><span class="nx">$2</span><span class="p">)</span><span class="w"> </span><span class="p">=&gt;</span><span class="w"> </span><span class="p">{</span>
7676176763
<span class="w"> </span><span class="k">return</span><span class="w"> </span><span class="sb">`$</span><span class="si">${</span><span class="p">(</span><span class="nx">sell</span><span class="w"> </span><span class="o">*</span><span class="w"> </span><span class="nx">$2</span><span class="p">).</span><span class="nx">toFixed</span><span class="p">(</span><span class="mf">2</span><span class="p">)</span><span class="si">}</span><span class="sb">`</span><span class="p">;</span>
7676276764
<span class="w"> </span><span class="p">});</span>
7676376765
<span class="w"> </span><span class="p">});</span>
76764-
<span class="w"> </span><span class="k">return</span><span class="w"> </span><span class="nx">arr</span><span class="p">.</span><span class="nx">join</span><span class="p">(</span><span class="s1">&#39; &#39;</span><span class="p">);</span>
76766+
<span class="w"> </span><span class="k">return</span><span class="w"> </span><span class="nx">words</span><span class="p">.</span><span class="nx">join</span><span class="p">(</span><span class="s1">&#39; &#39;</span><span class="p">);</span>
7676576767
<span class="p">}</span>
7676676768
</code></pre></div></td></tr></table></div>
7676776769
</div>

0 commit comments

Comments
 (0)