319:灯泡开关
This commit is contained in:
parent
dd34dc6971
commit
eda3db45a5
75
src/main/java/leetcode/editor/cn/BulbSwitcher.java
Normal file
75
src/main/java/leetcode/editor/cn/BulbSwitcher.java
Normal file
@ -0,0 +1,75 @@
|
||||
//初始时有 n 个灯泡处于关闭状态。
|
||||
//
|
||||
// 对某个灯泡切换开关意味着:如果灯泡状态为关闭,那该灯泡就会被开启;而灯泡状态为开启,那该灯泡就会被关闭。
|
||||
//
|
||||
// 第 1 轮,每个灯泡切换一次开关。即,打开所有的灯泡。
|
||||
//
|
||||
// 第 2 轮,每两个灯泡切换一次开关。 即,每两个灯泡关闭一个。
|
||||
//
|
||||
// 第 3 轮,每三个灯泡切换一次开关。
|
||||
//
|
||||
// 第 i 轮,每 i 个灯泡切换一次开关。 而第 n 轮,你只切换最后一个灯泡的开关。
|
||||
//
|
||||
// 找出 n 轮后有多少个亮着的灯泡。
|
||||
//
|
||||
//
|
||||
//
|
||||
// 示例 1:
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//输入:n = 3
|
||||
//输出:1
|
||||
//解释:
|
||||
//初始时, 灯泡状态 [关闭, 关闭, 关闭].
|
||||
//第一轮后, 灯泡状态 [开启, 开启, 开启].
|
||||
//第二轮后, 灯泡状态 [开启, 关闭, 开启].
|
||||
//第三轮后, 灯泡状态 [开启, 关闭, 关闭].
|
||||
//
|
||||
//你应该返回 1,因为只有一个灯泡还亮着。
|
||||
//
|
||||
//
|
||||
// 示例 2:
|
||||
//
|
||||
//
|
||||
//输入:n = 0
|
||||
//输出:0
|
||||
//
|
||||
//
|
||||
// 示例 3:
|
||||
//
|
||||
//
|
||||
//输入:n = 1
|
||||
//输出:1
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
// 提示:
|
||||
//
|
||||
//
|
||||
// 0 <= n <= 109
|
||||
//
|
||||
// Related Topics 脑筋急转弯 数学
|
||||
// 👍 172 👎 0
|
||||
|
||||
package leetcode.editor.cn;
|
||||
|
||||
//319:灯泡开关
|
||||
public class BulbSwitcher {
|
||||
public static void main(String[] args) {
|
||||
//测试代码
|
||||
Solution solution = new BulbSwitcher().new Solution();
|
||||
}
|
||||
|
||||
//力扣代码
|
||||
//leetcode submit region begin(Prohibit modification and deletion)
|
||||
class Solution {
|
||||
public int bulbSwitch(int n) {
|
||||
return (int) Math.sqrt(n);
|
||||
}
|
||||
}
|
||||
//leetcode submit region end(Prohibit modification and deletion)
|
||||
|
||||
}
|
54
src/main/java/leetcode/editor/cn/BulbSwitcher.md
Normal file
54
src/main/java/leetcode/editor/cn/BulbSwitcher.md
Normal file
@ -0,0 +1,54 @@
|
||||
<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>
|
Loading…
Reference in New Issue
Block a user