方法一:规律

解题思路:

class Solution {
public:int bulbSwitch(int n) {return sqrt(n);}
};

方法二:动态规划

解题思路:

会超出时间限制。

class Solution {
public:int bulbSwitch(int n) {vector<int> dp(n+1, 1);dp[0] = 0;if(n <= 3) return dp[n];else{for(int i = 4; i <= n; i++){int count = 0;for(int j = 2; j <= i; j++){if(i % j == 0) count++;}if(count % 2 == 0) dp[i] = dp[i-1] + 1;else dp[i] = dp[i-1];}return dp[n];}}
};

Leetcode 319. 灯泡开关 解题思路及C++实现相关推荐

  1. LeetCode 319 灯泡开关[数学] HERODING的LeetCode之路

    解题思路: 这题本质就是数学,需要分析,每个灯泡会被翻转的时机正好是他的约数次遍历的时候,那么我们其实知道,对于每个数的约数都是成对出现的,除非是完全平方数,会有奇数个约数,所以,最后完全平方数的灯泡 ...

  2. LeetCode 319. 灯泡开关(找规律)

    1. 题目 初始时有 n 个灯泡关闭. 第 1 轮,你打开所有的灯泡. 第 2 轮,每两个灯泡你关闭一次. 第 3 轮,每三个灯泡切换一次开关(如果关闭则开启,如果开启则关闭).第 i 轮,每 i 个 ...

  3. LeetCode 319. 灯泡开关

    题目:   初始时有 n 个灯泡处于关闭状态.第一轮,你将会打开所有灯泡.接下来的第二轮,你将会每两个灯泡关闭第二个.   第三轮,你每三个灯泡就切换第三个灯泡的开关(即,打开变关闭,关闭变打开).第 ...

  4. 算法 319. 灯泡开关 python

    319. 灯泡开关 思路 整数的因数 因数是指整数a除以整数b(b≠0) 的商正好是整数而没有余数,我们就说b是a的因数. class Solution(object):def bulbSwitch( ...

  5. 【LeetCode】灯泡开关Ⅰ~ Ⅳ(你还是把我关了吧)

    [LeetCode]灯泡开关Ⅰ~ Ⅳ

  6. 文巾解题 319. 灯泡开关

    1 题目描述 2 解题思路 这道题如果真的开了一个数组一个一个模拟,那么时间肯定超了 我们看一下规律吧: 灯的编号 开关会受到第几轮的影响(一开始都是关闭的 受影响的变换次数的奇偶 1 1 奇数 2 ...

  7. leetcode 5473. 灯泡开关 IV medium (智力题,O(n)思路详解)

    题目链接:https://leetcode-cn.com/problems/bulb-switcher-iv/ 解题思路 一开始真的在傻傻地反转字符串,果断超时. 后来终于摸索出规律: 连续的0可以视 ...

  8. LeetCode 5353. 灯泡开关 III

    5353. 灯泡开关 III 房间中有 n 枚灯泡,编号从 1 到 n,自左向右排成一排.最初,所有的灯都是关着的. 在 k  时刻( k 的取值范围是 0 到 n - 1),我们打开 light[k ...

  9. Leetcode 344. 反转字符串 解题思路及C++实现

    解题思路: 直接将第 i 个字符 与 第 n-1-i 个字符交换,就可以了. class Solution { public:void reverseString(vector<char> ...

最新文章

  1. bat 取得服务列表_基于IDEA热部署更新服务器Tomcat类,服务器Tomcat热更新
  2. JDBC为什么要使用PreparedStatement而不是Statement
  3. 十天学会ASP.net
  4. C++中的union(联合体,共用体,数据变量可以共享内存,以节省内存空间)
  5. 【小白学PyTorch】11.MobileNet详解及PyTorch实现
  6. leetcode 279 四平方定理
  7. python生成yaml文件_Python实践34-读写yaml文件
  8. python基础技巧总结(四)
  9. java中哪些可以私有化_《Java基础学习笔记》JAVA修饰符之私有化(Private)
  10. js中比较到期时间和当前时间
  11. xcode7: Undefined symbols for architecture i386: _iconv_open, referenced from:
  12. 6个最好的 HTML5/CSS3 演示(PPT)框架
  13. oracle 之 cursor:创建存储过程批量执行DDL语句
  14. VHDL 四选一数据选择器
  15. 发现同构:Gartner曲线、达克效应 与 跨越鸿沟
  16. MMORPG大型游戏设计与开发(概述)updated
  17. MySQL性能调优的10个方法
  18. 解决在iOS复制失败问题 iOS/Android通用
  19. 思维方式-《六顶思考帽》书中的精髓:通过在同一时间只使用一顶思考帽的方法,可以解决思维混乱等问题,从而提升思考效率。
  20. ADB读取和备份安卓应用数据(无Root)

热门文章

  1. React Native debug debugger
  2. Java stackoverflowerror异常与outofmemoryerror异常区别
  3. 理解 Azure 虚拟机的性能监视
  4. vue入门基础篇笔记1
  5. script和href
  6. Error:Execution failed for task ':app:clean'.
  7. iOS经典面试题总结--内存管理
  8. 如何给CentOS安装字体库
  9. 【Vegas原创】将treeview父结点的链接改为折叠事件
  10. android ART编译预优化