灯泡开关
灯泡开关
🎯 问题描述(来源于LeetCode)
1 | 初始时有 n个灯泡处于关闭状态。第一轮,你将会打开所有灯泡。接下来的第二轮,你将会每两个灯泡关闭第二个。 |
灵感思路
| 结果n | |||||||||
|---|---|---|---|---|---|---|---|---|---|
| 0 | 0 | sqrt(0) | |||||||
| 1 | 2 | 3 | 1 | sqrt(1) | |||||
| 4 | 5 | 6 | 7 | 8 | 2 | sqrt(4) | |||
| 9 | 10 | 11 | 12 | 13 | 14 | 15 | 3 | sqrt(9) | |
| 16 | 17 | 18 | 19 | 20 | 21 | ~~ | 24 | 4 | sqrt(16) |
| 猜测结果=int(sqrt(n)) 向下取整 |
💻 代码实现
1 | class Solution: |
📊 性能分析
提交结果
- 运行时间:0ms击败100.00%
- 内存消耗:17.38MB击败74.66%
复杂度验证
- 时间复杂度:
- 空间复杂度:
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 笺札!









