当前位置:网站首页>319. 灯泡开关
319. 灯泡开关
2022-07-05 08:31:00 【Mr Gao】
319. 灯泡开关
初始时有 n 个灯泡处于关闭状态。第一轮,你将会打开所有灯泡。接下来的第二轮,你将会每两个灯泡关闭第二个。
第三轮,你每三个灯泡就切换第三个灯泡的开关(即,打开变关闭,关闭变打开)。第 i 轮,你每 i 个灯泡就切换第 i 个灯泡的开关。直到第 n 轮,你只需要切换最后一个灯泡的开关。
找出并返回 n 轮后有多少个亮着的灯泡。
示例 1:
输入:n = 3
输出:1
解释:
初始时, 灯泡状态 [关闭, 关闭, 关闭].
第一轮后, 灯泡状态 [开启, 开启, 开启].
第二轮后, 灯泡状态 [开启, 关闭, 开启].
第三轮后, 灯泡状态 [开启, 关闭, 关闭].
你应该返回 1,因为只有一个灯泡还亮着。
示例 2:
输入:n = 0
输出:0
示例 3:
输入:n = 1
输出:1
这里灯泡是否关闭和他的约数个数有关:
常规解题代码如下:
int f(int n){
int count=1;
int i;
for(i=2;i<=n/2;i++){
if(n%i==0){
count++;
}
}
return count;
}
int bulbSwitch(int n){
int i;
if(n==0){
return 0;
}
int count=1;
for(i=2;i<=n;i++){
int c=f(i);
// printf("%d ",c);
if(c%2==0){
count++;
}
}
return count;
}
下面还由一种非常棒的技巧解法:
int bulbSwitch(int n){
int i;
if(n==0){
return 0;
}
int count=1;
for(i=2;i<=n;i++){
if(i*i>n){
return i-1;
}
}
return count;
}
边栏推荐
- Arduino burning program and Arduino burning bootloader
- Negative pressure generation of buck-boost circuit
- Example 004: for the day of the day, enter a day of a month of a year to judge the day of the year?
- [cloud native | learn kubernetes from scratch] III. kubernetes cluster management tool kubectl
- Esphone Feixun DC1 soft change access homeassstant
- Soem EtherCAT source code analysis attachment 1 (establishment of communication operation environment)
- [nas1] (2021cvpr) attentivenas: improving neural architecture search via attentive sampling (unfinished)
- Count the number of inputs (C language)
- Cinq détails de conception du régulateur de tension linéaire
- Detailed summary of FIO test hard disk performance parameters and examples (with source code)
猜你喜欢
[trio basic tutorial 17 from getting started to mastering] set up and connect the trio motion controller and input the activation code
QEMU STM32 vscode debugging environment configuration
实例003:完全平方数 一个整数,它加上100后是一个完全平方数,再加上168又是一个完全平方数,请问该数是多少?
Talk about the function of magnetic beads in circuits
Arduino burning program and Arduino burning bootloader
List of linked lists
Example 010: time to show
MySQL之MHA高可用集群
【三层架构及JDBC总结】
Detailed summary of FIO test hard disk performance parameters and examples (with source code)
随机推荐
[trio basic tutorial 17 from getting started to mastering] set up and connect the trio motion controller and input the activation code
Example 004: for the day of the day, enter a day of a month of a year to judge the day of the year?
Semiconductor devices (I) PN junction
2022.7.4-----leetcode. one thousand and two hundred
Array integration initialization (C language)
go依赖注入--google开源库wire
Example 002: the bonus paid by the "individual income tax calculation" enterprise is based on the profit commission. When the profit (I) is less than or equal to 100000 yuan, the bonus can be increase
[three tier architecture]
Soem EtherCAT source code analysis attachment 1 (establishment of communication operation environment)
MHA High available Cluster for MySQL
Keil use details -- magic wand
UE pixel stream, come to a "diet pill"!
Arduino burning program and Arduino burning bootloader
[trio basic from introduction to mastery tutorial XIV] trio realizes unit axis multi-color code capture
实例001:数字组合 有四个数字:1、2、3、4,能组成多少个互不相同且无重复数字的三位数?各是多少?
Management and use of DokuWiki
Five design details of linear regulator
One question per day - replace spaces
Arduino+a4988 control stepper motor
DCDC circuit - function of bootstrap capacitor