leet-code/src/main/java/leetcode/editor/cn/BulbSwitcher.md

54 lines
1.8 KiB
Markdown
Raw Normal View History

2021-05-07 22:28:26 +08:00
<p>初始时有 <code>n</code><em> </em>个灯泡处于关闭状态。</p>
<p>对某个灯泡切换开关意味着:如果灯泡状态为关闭,那该灯泡就会被开启;而灯泡状态为开启,那该灯泡就会被关闭。</p>
<p>第 1 轮,每个灯泡切换一次开关。即,打开所有的灯泡。</p>
<p>第 2 轮,每两个灯泡切换一次开关。 即,每两个灯泡关闭一个。</p>
<p>第 3 轮,每三个灯泡切换一次开关。</p>
<p>第 <code>i</code> 轮,每 <code>i</code><em> </em>个灯泡切换一次开关。 而第 <code>n</code><em> </em>轮,你只切换最后一个灯泡的开关。</p>
<p>找出 <code>n</code><em> </em>轮后有多少个亮着的灯泡。</p>
<p> </p>
<p><strong>示例 1</strong></p>
<p><img alt="" src="https://assets.leetcode.com/uploads/2020/11/05/bulb.jpg" style="width: 421px; height: 321px;" /></p>
<pre>
<strong>输入:</strong>n =<strong> </strong>3
<strong>输出:</strong>1
<strong>解释:</strong>
初始时, 灯泡状态 <strong>[关闭, 关闭, 关闭]</strong>.
第一轮后, 灯泡状态 <strong>[开启, 开启, 开启]</strong>.
第二轮后, 灯泡状态 <strong>[开启, 关闭, 开启]</strong>.
第三轮后, 灯泡状态 <strong>[开启, 关闭, 关闭]</strong>.
你应该返回 1因为只有一个灯泡还亮着。
</pre>
<p><strong>示例 2</strong></p>
<pre>
<strong>输入:</strong>n = 0
<strong>输出:</strong>0
</pre>
<p><strong>示例 3</strong></p>
<pre>
<strong>输入:</strong>n = 1
<strong>输出:</strong>1
</pre>
<p> </p>
<p><strong>提示:</strong></p>
<ul>
<li><code>0 <= n <= 10<sup>9</sup></code></li>
</ul>
<div><div>Related Topics</div><div><li>脑筋急转弯</li><li>数学</li></div></div>\n<div><li>👍 172</li><li>👎 0</li></div>