题目描述: 初始时有 n 个灯泡关闭。 第 1 轮,你打开所有的灯泡。 第 2 轮,每两个灯泡你关闭一次。 第 3 轮,每三个灯泡切换一次开关(如果关闭则开启,如果开启则关闭)。第 i 轮,每 i 个灯泡切换一次开关。 对于第 n 轮,你只切换最后一个灯泡的开关。 找出 n 轮后有多少个亮着的灯泡。示例:
输入: 3
输出: 1
解释:
初始时, 灯泡状态 [关闭, 关闭, 关闭].
第一轮后, 灯泡状态 [开启, 开启, 开启].
第二轮后, 灯泡状态 [开启, 关闭, 开启].
第三轮后, 灯泡状态 [开启, 关闭, 关闭].
你应该返回 1,因为只有一个灯泡还亮着。
我的疑惑
谷歌百度一大堆解题思路,只有两个让我比较心仪的答案。一个时 CSDN 某博主在 2015 年写的,跳跃太大,我一时半会理解不了; 一个是力扣英文区本题评论区的精选评价,奈何谷歌翻译也会出现牛头不对马尾的语法,搞的我不知道该怎么去理解。
虽然在整体上对本题已经有了自己的认识,但是总感觉心里有疑惑点,好像差点什么,我自认为自己还没有搞懂这道题。 希望大家能帮我解答疑惑,分析的时候麻烦尽量详细点。
最后
我贴出力扣英文区该题的链接: https://leetcode.com/problems/bulb-switcher/discuss/77112/Share-my-o(1 小弟愚钝,恳请解惑。
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.