LeetCode:灯泡开关2】的更多相关文章

题目 现有一个房间,墙上挂有 n 只已经打开的灯泡和 4 个按钮.在进行了 m 次未知操作后,你需要返回这 n 只灯泡可能有多少种不同的状态. 假设这 n 只灯泡被编号为 [1, 2, 3 ..., n],这 4 个按钮的功能如下: 将所有灯泡的状态反转(即开变为关,关变为开) 将编号为偶数的灯泡的状态反转 将编号为奇数的灯泡的状态反转 将编号为 3k+1 的灯泡的状态反转(k = 0, 1, 2, ...) 示例 1: 输入: n = 1, m = 1. 输出: 2 说明: 状态为: [开],…
灯泡开关II 现有一个房间,墙上挂有 n 只已经打开的灯泡和 4 个按钮.在进行了 m 次未知操作后,你需要返回这 n 只灯泡可能有多少种不同的状态. 假设这 n 只灯泡被编号为 [1, 2, 3 ..., n],这 4 个按钮的功能如下: 将所有灯泡的状态反转(即开变为关,关变为开) 将编号为偶数的灯泡的状态反转 将编号为奇数的灯泡的状态反转 将编号为 3k+1 的灯泡的状态反转(k = 0, 1, 2, ...) 示例 1: 输入: n = 1, m = 1. 输出: 2 说明: 状态为:…
灯泡开关 初始时有 n 个灯泡关闭.第 1 轮,你打开所有的灯泡.第 2 轮,每两个灯泡你关闭一次.第 3 轮,每三个灯泡切换一次开关(如果关闭则开启,如果开启则关闭).第 i 轮,每 i 个灯泡切换一次开关.对于第 n 轮,你只切换最后一个灯泡的开关.找出 n 轮后有多少个亮着的灯泡. 示例: 输入: 3 输出: 1 解释: 初始时, 灯泡状态 [关闭, 关闭, 关闭]. 第一轮后, 灯泡状态 [开启, 开启, 开启]. 第二轮后, 灯泡状态 [开启, 关闭, 开启]. 第三轮后, 灯泡状态…
672. 灯泡开关 Ⅱ 现有一个房间,墙上挂有 n 只已经打开的灯泡和 4 个按钮.在进行了 m 次未知操作后,你需要返回这 n 只灯泡可能有多少种不同的状态. 假设这 n 只灯泡被编号为 [1, 2, 3 -, n],这 4 个按钮的功能如下: 将所有灯泡的状态反转(即开变为关,关变为开) 将编号为偶数的灯泡的状态反转 将编号为奇数的灯泡的状态反转 将编号为 3k+1 的灯泡的状态反转(k = 0, 1, 2, -) 示例 1: 输入: n = 1, m = 1. 输出: 2 说明: 状态为:…
319. 灯泡开关 初始时有 n 个灯泡关闭. 第 1 轮,你打开所有的灯泡. 第 2 轮,每两个灯泡你关闭一次. 第 3 轮,每三个灯泡切换一次开关(如果关闭则开启,如果开启则关闭).第 i 轮,每 i 个灯泡切换一次开关. 对于第 n 轮,你只切换最后一个灯泡的开关. 找出 n 轮后有多少个亮着的灯泡. 示例: 输入: 3 输出: 1 解释: 初始时, 灯泡状态 [关闭, 关闭, 关闭]. 第一轮后, 灯泡状态 [开启, 开启, 开启]. 第二轮后, 灯泡状态 [开启, 关闭, 开启]. 第…
There are n bulbs that are initially off. You first turn on all the bulbs. Then, you turn off every second bulb. On the third round, you toggle every third bulb (turning on if it's off or turning off if it's on). For the nth round, you only toggle th…
一.题目描述 初始时有 n 个灯泡关闭. 第 1 轮,你打开所有的灯泡. 第 2 轮,每两个灯泡你关闭一次. 第 3 轮,每三个灯泡切换一次开关(如果关闭则开启,如果开启则关闭).第 i 轮,每 i 个灯泡切换一次开关. 对于第 n 轮,你只切换最后一个灯泡的开关. 找出 n 轮后有多少个亮着的灯泡. 示例: 输入: 3 输出: 1 解释: 初始时, 灯泡状态 [关闭, 关闭, 关闭]. 第一轮后, 灯泡状态 [开启, 开启, 开启]. 第二轮后, 灯泡状态 [开启, 关闭, 开启]. 第三轮后…
There is a room with n lights which are turned on initially and 4 buttons on the wall. After performing exactly m unknown operations towards buttons, you need to return how many different kinds of status of the n lights could be. Suppose n lights are…
智商压制的一道题 这个题有个数学定理: 一般数(非完全平方数)的因子有偶数个 完全平凡数的因子有奇数个 开开关的时候,第i个灯每到它的因子一轮的时候就会拨动一下,也就是每个灯拨动的次数是它的因子数 而拨动偶数次是关,拨动奇数次是开 现在就是求哪些数的因子有奇数个,也就是求n以内的完全平凡数 这里又有一个定理: n以内的完全平方数个数是sprt(n) 所以代码很简单 public int bulbSwitch(int n) { return (int)Math.sqrt(n); }…
There are n bulbs that are initially off. You first turn on all the bulbs. Then, you turn off every second bulb. On the third round, you toggle every third bulb (turning on if it's off or turning off if it's on). For the i-th round, you toggle every …
初始时有 n 个灯泡关闭. 第 1 轮,你打开所有的灯泡. 第 2 轮,每两个灯泡切换一次开关. 第 3 轮,每三个灯泡切换一次开关(如果关闭,则打开,如果打开则关闭).对于第 i 轮,你每 i 个灯泡切换一次开关. 对于第 n 轮,你只切换最后一个灯泡的开关. 找出 n 轮后有多少个亮着的灯泡.示例:给定 n = 3.状态off表示灯泡关闭,on表示开启.初始时, 灯泡状态 [off, off, off].第一轮后, 灯泡状态 [on, on, on].第二轮后, 灯泡状态 [on, off,…
There is a room with n lights which are turned on initially and 4 buttons on the wall. After performing exactly munknown operations towards buttons, you need to return how many different kinds of status of the n lights could be. Suppose n lights are…
初始时有 n 个灯泡关闭. 第 1 轮,你打开所有的灯泡. 第 2 轮,每两个灯泡你关闭一次. 第 3 轮,每三个灯泡切换一次开关(如果关闭则开启,如果开启则关闭).第 i 轮,每 i 个灯泡切换一次开关. 对于第 n 轮,你只切换最后一个灯泡的开关. 找出 n 轮后有多少个亮着的灯泡. 示例: 输入: 3 输出: 1 解释: 初始时, 灯泡状态 [关闭, 关闭, 关闭]. 第一轮后, 灯泡状态 [开启, 开启, 开启]. 第二轮后, 灯泡状态 [开启, 关闭, 开启]. 第三轮后, 灯泡状态…
题目描述: 小A是一名DIY爱好者,经常制作一些有趣的东西. 今天,小A突然想要来做这样一个东西.小A现在有两块同样大小为n×m,有n×m块大小为1×1小电路板拼成的矩形电路板,假设叫做电路板A和电路板B.电路板A上每个小电路板都是一个开关,电路板B上每个小电路板上都是一盏电灯泡.A与B之间存在如下关系:对于B上的某盏灯Bij的开关控制,有A上第i行与第j列所有开关并联控制.即: 现给一矩阵,表示B上灯泡的明暗状态,问是否存在一种A的开关状态,能够满足给出的B上的灯泡开关情况,如果有输出YES,…
Array 448.找出数组中所有消失的数 要求:整型数组取值为 1 ≤ a[i] ≤ n,n是数组大小,一些元素重复出现,找出[1,n]中没出现的数,实现时时间复杂度为O(n),并不占额外空间 思路1:(discuss)用数组下标标记未出现的数,如出现4就把a[3]的数变成负数,当查找时判断a的正负就能获取下标 tips:注意数组溢出 public List<Integer> findDisappearedNumbers(int[] nums) { List<Integer> d…
请点击页面左上角 -> Fork me on Github 或直接访问本项目Github地址:LeetCode Solution by Swift    说明:题目中含有$符号则为付费题目. 如:[Swift]LeetCode156.二叉树的上下颠倒 $ Binary Tree Upside Down 请下拉滚动条查看最新 Weekly Contest!!! Swift LeetCode 目录 | Catalog 序        号 题名Title 难度     Difficulty  两数之…
前言 Leetcode现在弄了一个Weekly Contest,然后题目又会作为新题目:感觉如果现在还不及时刷题的话可能真的赶不上它题目增长的速度了.......题目会在博客和Github上同步更新的,之前也写了一篇博客但是没有保证好与刷题和Github上的同步关系,这次会注意及时更新的....... 题目 代码可直接在Github里查阅. 001_Two_Sum 002_Add_Two_Numbers 003_Longest_Substring_Without_Repeating_Charac…
题库:LeetCode题库 - 中等难度 习题:网友收集 - zhizhiyu 此处应为一个简单的核心总结,以及练习笔记. 查找一个数“在不在”?桶排序理论上貌似不错. 回文问题 ----> [IR] Suffix Trees and Suffix Arrays 大数计算 ----> [Algorithm] Polynomial and FFT 公共部分 ----> 俩字符串的 “最长公共部分” (动态规划问题)----> [Optimization] Dynamic progra…
数学篇 # 题名 刷题 通过率 难度 2 两数相加   29.0% 中等 7 反转整数 C#LeetCode刷题之#7-反转整数(Reverse Integer) 28.6% 简单 8 字符串转整数 (atoi)   15.3% 中等 9 回文数 C#LeetCode刷题之#9-回文数(Palindrome Number) 51.7% 简单 12 整数转罗马数字   53.8% 中等 13 罗马数字转整数 C#LeetCode刷题之#13-罗马数字转整数(Roman to Integer) 53…
本文总结LeetCode上有数学类的算法题,推荐刷题总数为40道.具体考点分析如下图: 1.基本运算问题 题号:29. 两数相除,难度中等 题号:166. 分数到小数,难度中等 题号:372. 超级次方,难度中等 题号:483. 最小好进制,难度困难 题号:810. 黑板异或游戏,难度困难 2.组合数学问题(排列问题) 题号:60. 第k个排列,难度中等 题号:233. 数字 1 的个数,难度困难 题号:670. 最大交换,难度中等 题号:1012. 至少有 1 位重复的数字,难度困难 3.质数…
现在有100个灯泡,每个灯泡都是关着的,灯泡排序为1~100,接着将2的倍数的灯泡开关按一下,然后将3的倍数的灯泡开关按一下……直到将N的倍数的灯泡开关按一下,最后统计灯泡亮着的数目. 算法思路: 1.将灯泡数存入数组 2.数组都默认值为0 3.将N的倍数的灯泡从2~N改变一下数值,若灯泡本身为0,则赋值1,否则赋值为0 class Light{ public static void main(String[] args){ int[] nums = new int[100]; int inde…
脑筋急转弯篇 # 题名 刷题 通过率 难度 292 Nim游戏   62.5% 简单 319 灯泡开关   31.8% 中等 777 在LR字符串中交换相邻字符   21.9% 中等…
Bulb Switcher 灯泡开关 思路:除了平方数以外,其他所有位置的灯泡最终都被开关了偶数次,因此最终都为0.问题等价于求1~n中平方数的个数. public class Solution { public int bulbSwitch(int n) { return (int)Math.sqrt(n); } } Count Primes 质数计数 思路1:暴力法.其中判断每一个数n是不是质数需要验证是否任何小于n的数都不能整除n,这一步是O(n).因此整体复杂度是O(n^2). 思路2:…
http://acm.hdu.edu.cn/showproblem.php?pid=2276 矩阵乘法可以解决的一类灯泡开关问题 /* 转移关系为 now left now* 1 0 1 1 1 0 0 1 1 0 0 0 可知F[i] = (f[i] + f[(n+i-2)%n+1]) % 2 得到n*n的关系矩阵是 1 1 0 0 ... 0 0 1 1 0 ... 0 0 0 1 1 ... 0 . . . . ... 0 . . . . ... 0 . . . . ... 0 0 0 0…
一.状态模式的定义 状态模式的关键是区分事务内部和外部的状态,事务内部状态改变往往会带来事务的行为改变. 状态模式中有意思的一点是,一般我们谈到封装,都是优先封装对象的行为,而非对象的状态.但在状态模式中刚好相反,状态模式的关键是把事务的每种状态都封装为单独的类,跟此种状态有关的行为都封装在这个类的内部.与此同时,我们还可以把状态的切换规则实现分布在状态类中,这样就有效消除了原本存在的大量条件分支语句. 二.状态模式的应用案例——文件上传 在现实中,状态模式的应用案例有很多,如文件上传程序有文件…
本书首先从黑夜中用手电筒开关灯的方式来与小伙伴交流从而引出了编码与组合的概念,并阐明了编码的本质就是交流,是一种用来在机器与人之间传递信息的方式.然后在第 2~3 章中讲述了编码与组合的应用,如电报机的莫尔斯码及布莱叶盲文,进而引出了二进制码.并在第 7~9 章详细阐述了不同进制及二进制数的概念. 第 4~6 章,通过剖析手电筒的电路构造,将其拆分为电池,导线,灯泡,开关这四种基本组合,从而讲述了远距离如何用开关控制灯泡来滴滴答答的传递讯息.然后提到了电报机及继电器.并在第 10 章逻辑与开关中…
ZigBee采用802.15.4标准作为其对等通信的基础.该标准由ZigBee联盟(ZigBee Alliance)开发并管理.ZigBee Alliance是一家投资于该标准并在无线领域进行推广的联合组织,并且日益为业界所关注.不过ZigBee拥有自己独特的应用功能,用户应对此进行充分了解,而不是仓促地将其应用于所有的低功耗无线应用领域. ZigBee最常用作异步通信标准,其具备CSMA/CA通道接入能力,并拥有802.15.4章节所述的所有功能.针对相同市场领域的情况下,相比之下ZigBee…
题目描述 Consider a square map with N × N cells. We indicate the coordinate of a cell by (i, j), where 1 ≤ i, j ≤ N . Each cell has a color either white or black. The color of each cell is initialized to white. The map supports the operationflip([xlow ,…
vijosP1447 开关灯泡 链接:https://vijos.org/p/1447 [思路] 数学+高精度. 分析题目:题中有言,i时刻将其所有倍数的灯熄灭,由此得知一个数有多少个倍数就会被操作多少次,因为初始全部熄灭,所以操作数为奇的灯最后会亮着,再进一步,只有序号为平方数的灯在最后会亮着. 由此题目转化为求n以内平方数的个数,个数为sqrt(n)个(别问我怎么知道的=_=) 数据范围要求我们用到高精.至此,题目就是对一个大数开方的问题,NOIP的初赛曾出现过这个程序. [代码] #inc…
P1447开关灯泡 Accepted 标签:CSC WorkGroup III[显示标签] 描写叙述 一个房间里有n盏灯泡.一開始都是熄着的,有1到n个时刻.每一个时刻i,我们会将i的倍数的灯泡改变状态(即原本开着的现将它熄灭,原本熄灭的现将它点亮),问最后有多少盏灯泡是亮着的. 格式 输入格式 一个数n 输出格式 m,表示最后有m盏是亮着的 例子1 例子输入1[复制] 5 例子输出1[复制] 2 限制 1s 提示 范围:40%的数据保证,n<=maxlongint 100%的数据保证,n<=…