Skip to content

Commit 0acb823

Browse files
committed
deploy: c5d742b
1 parent 11e3084 commit 0acb823

File tree

10 files changed

+8021
-6937
lines changed

10 files changed

+8021
-6937
lines changed

en/lc/319/index.html

Lines changed: 42 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -13505,9 +13505,9 @@
1350513505
<ul class="md-nav__list">
1350613506

1350713507
<li class="md-nav__item">
13508-
<a href="#solution-1" class="md-nav__link">
13508+
<a href="#solution-1-mathematics" class="md-nav__link">
1350913509
<span class="md-ellipsis">
13510-
Solution 1
13510+
Solution 1: Mathematics
1351113511
</span>
1351213512
</a>
1351313513

@@ -75463,15 +75463,22 @@ <h2 id="description">Description</h2>
7546375463
</ul>
7546475464

7546575465
<h2 id="solutions">Solutions</h2>
75466-
<h3 id="solution-1">Solution 1</h3>
75467-
<div class="tabbed-set tabbed-alternate" data-tabs="1:2"><input checked="checked" id="__tabbed_1_1" name="__tabbed_1" type="radio" /><input id="__tabbed_1_2" name="__tabbed_1" type="radio" /><div class="tabbed-labels"><label for="__tabbed_1_1">Python3</label><label for="__tabbed_1_2">Java</label></div>
75466+
<h3 id="solution-1-mathematics">Solution 1: Mathematics</h3>
75467+
<p>We can number the $n$ bulbs as $1, 2, 3, \cdots, n$. For the $i$-th bulb, it will be operated in the $d$-th round if and only if $d$ is a factor of $i$.</p>
75468+
<p>For a number $i$, the number of its factors is finite. If the number of factors is odd, the final state is on; otherwise, it is off.</p>
75469+
<p>Therefore, we only need to find the number of numbers from $1$ to $n$ with an odd number of factors.</p>
75470+
<p>For a number $i$, if it has a factor $d$, then it must have a factor $i/d$. Therefore, numbers with an odd number of factors must be perfect squares.</p>
75471+
<p>For example, the factors of the number $12$ are $1, 2, 3, 4, 6, 12$, and the number of factors is $6$, which is even. For the perfect square number $16$, the factors are $1, 2, 4, 8, 16$, and the number of factors is $5$, which is odd.</p>
75472+
<p>Therefore, we only need to find how many perfect squares there are from $1$ to $n$, which is $\lfloor \sqrt{n} \rfloor$.</p>
75473+
<p>The time complexity is $O(1)$, and the space complexity is $O(1)$.</p>
75474+
<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>
7546875475
<div class="tabbed-content">
7546975476
<div class="tabbed-block">
7547075477
<div class="highlight"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><span></span><span class="normal">1</span>
7547175478
<span class="normal">2</span>
7547275479
<span class="normal">3</span></pre></div></td><td class="code"><div><pre><span></span><code><span class="k">class</span> <span class="nc">Solution</span><span class="p">:</span>
7547375480
<span class="k">def</span> <span class="nf">bulbSwitch</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">n</span><span class="p">:</span> <span class="nb">int</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="nb">int</span><span class="p">:</span>
75474-
<span class="k">return</span> <span class="nb">int</span><span class="p">(</span><span class="n">n</span> <span class="o">**</span> <span class="p">(</span><span class="mi">1</span> <span class="o">/</span> <span class="mi">2</span><span class="p">))</span>
75481+
<span class="k">return</span> <span class="nb">int</span><span class="p">(</span><span class="n">sqrt</span><span class="p">(</span><span class="n">n</span><span class="p">))</span>
7547575482
</code></pre></div></td></tr></table></div>
7547675483
</div>
7547775484
<div class="tabbed-block">
@@ -75486,6 +75493,36 @@ <h3 id="solution-1">Solution 1</h3>
7548675493
<span class="p">}</span>
7548775494
</code></pre></div></td></tr></table></div>
7548875495
</div>
75496+
<div class="tabbed-block">
75497+
<div class="highlight"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><span></span><span class="normal">1</span>
75498+
<span class="normal">2</span>
75499+
<span class="normal">3</span>
75500+
<span class="normal">4</span>
75501+
<span class="normal">5</span>
75502+
<span class="normal">6</span></pre></div></td><td class="code"><div><pre><span></span><code><span class="k">class</span><span class="w"> </span><span class="nc">Solution</span><span class="w"> </span><span class="p">{</span>
75503+
<span class="k">public</span><span class="o">:</span>
75504+
<span class="w"> </span><span class="kt">int</span><span class="w"> </span><span class="n">bulbSwitch</span><span class="p">(</span><span class="kt">int</span><span class="w"> </span><span class="n">n</span><span class="p">)</span><span class="w"> </span><span class="p">{</span>
75505+
<span class="w"> </span><span class="k">return</span><span class="w"> </span><span class="p">(</span><span class="kt">int</span><span class="p">)</span><span class="w"> </span><span class="n">sqrt</span><span class="p">(</span><span class="n">n</span><span class="p">);</span>
75506+
<span class="w"> </span><span class="p">}</span>
75507+
<span class="p">};</span>
75508+
</code></pre></div></td></tr></table></div>
75509+
</div>
75510+
<div class="tabbed-block">
75511+
<div class="highlight"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><span></span><span class="normal">1</span>
75512+
<span class="normal">2</span>
75513+
<span class="normal">3</span></pre></div></td><td class="code"><div><pre><span></span><code><span class="kd">func</span><span class="w"> </span><span class="nx">bulbSwitch</span><span class="p">(</span><span class="nx">n</span><span class="w"> </span><span class="kt">int</span><span class="p">)</span><span class="w"> </span><span class="kt">int</span><span class="w"> </span><span class="p">{</span>
75514+
<span class="w"> </span><span class="k">return</span><span class="w"> </span><span class="nb">int</span><span class="p">(</span><span class="nx">math</span><span class="p">.</span><span class="nx">Sqrt</span><span class="p">(</span><span class="nb">float64</span><span class="p">(</span><span class="nx">n</span><span class="p">)))</span>
75515+
<span class="p">}</span>
75516+
</code></pre></div></td></tr></table></div>
75517+
</div>
75518+
<div class="tabbed-block">
75519+
<div class="highlight"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><span></span><span class="normal">1</span>
75520+
<span class="normal">2</span>
75521+
<span class="normal">3</span></pre></div></td><td class="code"><div><pre><span></span><code><span class="kd">function</span><span class="w"> </span><span class="nx">bulbSwitch</span><span class="p">(</span><span class="nx">n</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>
75522+
<span class="w"> </span><span class="k">return</span><span class="w"> </span><span class="nb">Math</span><span class="p">.</span><span class="nx">floor</span><span class="p">(</span><span class="nb">Math</span><span class="p">.</span><span class="nx">sqrt</span><span class="p">(</span><span class="nx">n</span><span class="p">));</span>
75523+
<span class="p">}</span>
75524+
</code></pre></div></td></tr></table></div>
75525+
</div>
7548975526
</div>
7549075527
</div>
7549175528
<!-- end -->

0 commit comments

Comments
 (0)