码迷,mamicode.com
首页 > 其他好文 > 详细

LeetCode Bulb Switcher

时间:2016-01-23 17:59:36      阅读:172      评论:0      收藏:0      [点我收藏+]

标签:

原题链接在这里:https://leetcode.com/problems/bulb-switcher/

给定n,初始的时候灯都是灭的,让你进行进行开关灯。第一轮的时候把1的倍数反转(原来关就开,原来开就关),第二轮把2的倍数反转,以此类推到第n轮。

求最后灯打开的个数

 

对于素数,那么它仅有1和它本身,最后一定是关掉的。

对一普通的,一定是关掉的,因子成对出现

对于完全平方数,因为有一个倍数不成对出现,所以一定是打开的。比如4 => 1,4开; 2关

所以本题就是求1~n有几个完全平方数。

直接返回sqrt(n).

Time Complexity: O(1). Space: O(1).

AC Java:

1 public class Solution {
2     public int bulbSwitch(int n) {
3         return (int)Math.sqrt(n);
4     }
5 }

Reference: http://blog.csdn.net/murmured/article/details/50363720

LeetCode Bulb Switcher

标签:

原文地址:http://www.cnblogs.com/Dylan-Java-NYC/p/5153558.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!