Leetcode 319. 灯泡开关 解题思路及C++实现
方法一:规律
解题思路:
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++实现相关推荐
- LeetCode 319 灯泡开关[数学] HERODING的LeetCode之路
解题思路: 这题本质就是数学,需要分析,每个灯泡会被翻转的时机正好是他的约数次遍历的时候,那么我们其实知道,对于每个数的约数都是成对出现的,除非是完全平方数,会有奇数个约数,所以,最后完全平方数的灯泡 ...
- LeetCode 319. 灯泡开关(找规律)
1. 题目 初始时有 n 个灯泡关闭. 第 1 轮,你打开所有的灯泡. 第 2 轮,每两个灯泡你关闭一次. 第 3 轮,每三个灯泡切换一次开关(如果关闭则开启,如果开启则关闭).第 i 轮,每 i 个 ...
- LeetCode 319. 灯泡开关
题目: 初始时有 n 个灯泡处于关闭状态.第一轮,你将会打开所有灯泡.接下来的第二轮,你将会每两个灯泡关闭第二个. 第三轮,你每三个灯泡就切换第三个灯泡的开关(即,打开变关闭,关闭变打开).第 ...
- 算法 319. 灯泡开关 python
319. 灯泡开关 思路 整数的因数 因数是指整数a除以整数b(b≠0) 的商正好是整数而没有余数,我们就说b是a的因数. class Solution(object):def bulbSwitch( ...
- 【LeetCode】灯泡开关Ⅰ~ Ⅳ(你还是把我关了吧)
[LeetCode]灯泡开关Ⅰ~ Ⅳ
- 文巾解题 319. 灯泡开关
1 题目描述 2 解题思路 这道题如果真的开了一个数组一个一个模拟,那么时间肯定超了 我们看一下规律吧: 灯的编号 开关会受到第几轮的影响(一开始都是关闭的 受影响的变换次数的奇偶 1 1 奇数 2 ...
- leetcode 5473. 灯泡开关 IV medium (智力题,O(n)思路详解)
题目链接:https://leetcode-cn.com/problems/bulb-switcher-iv/ 解题思路 一开始真的在傻傻地反转字符串,果断超时. 后来终于摸索出规律: 连续的0可以视 ...
- LeetCode 5353. 灯泡开关 III
5353. 灯泡开关 III 房间中有 n 枚灯泡,编号从 1 到 n,自左向右排成一排.最初,所有的灯都是关着的. 在 k 时刻( k 的取值范围是 0 到 n - 1),我们打开 light[k ...
- Leetcode 344. 反转字符串 解题思路及C++实现
解题思路: 直接将第 i 个字符 与 第 n-1-i 个字符交换,就可以了. class Solution { public:void reverseString(vector<char> ...
最新文章
- bat 取得服务列表_基于IDEA热部署更新服务器Tomcat类,服务器Tomcat热更新
- JDBC为什么要使用PreparedStatement而不是Statement
- 十天学会ASP.net
- C++中的union(联合体,共用体,数据变量可以共享内存,以节省内存空间)
- 【小白学PyTorch】11.MobileNet详解及PyTorch实现
- leetcode 279 四平方定理
- python生成yaml文件_Python实践34-读写yaml文件
- python基础技巧总结(四)
- java中哪些可以私有化_《Java基础学习笔记》JAVA修饰符之私有化(Private)
- js中比较到期时间和当前时间
- xcode7: Undefined symbols for architecture i386: _iconv_open, referenced from:
- 6个最好的 HTML5/CSS3 演示(PPT)框架
- oracle 之 cursor:创建存储过程批量执行DDL语句
- VHDL 四选一数据选择器
- 发现同构:Gartner曲线、达克效应 与 跨越鸿沟
- MMORPG大型游戏设计与开发(概述)updated
- MySQL性能调优的10个方法
- 解决在iOS复制失败问题 iOS/Android通用
- 思维方式-《六顶思考帽》书中的精髓:通过在同一时间只使用一顶思考帽的方法,可以解决思维混乱等问题,从而提升思考效率。
- ADB读取和备份安卓应用数据(无Root)