还有几盏灯?

大厅里有100盏灯,每盏灯都编了号码,分别为1-100.每盏灯由一个开关来控制.(开关按一下,灯亮,再按一下灯灭.开关的编号与被控制的灯相同.)开始时,灯是全灭的.现在按照以下规则按动开关.

第一次,将所有的灯点亮.

第二次,将所有2的倍数的开关按一下.

第三次,将所有3的倍数的开关按一下.

以此类推.第N次,将所有N的倍数的开关按一下.

问第100次按完以后,大厅里还有几盏灯是亮的.

解答:

这题和数字的因数个数有关.例如:12=1*12=2*6=3*4,所以1,2,3,4,6,12就是12的因数.

第N盏灯是否亮取决于开关次数的奇偶性,也就是N的因数个数的奇偶性.12有6个因数,所以第12盏灯的开关按6次,是灭的.

而除了完全平方数之外,其他数的因数个数都是偶数,因为N=a*b,有了a就会有b,第a次按下开关,第b下又会按一次,所以是灭的;

但完全平方数却有N=a*a,第a次按过后不会再有第a次按它,因数个数为奇,所以是亮的.

所以完全平方数的灯是亮的.

所以大厅里有10盏灯是亮的,分别是第1,4,9,16,25,36,49,64,81,100.

时间: 2024-10-12 17:48:21

还有几盏灯?的相关文章

由100盏灯想到的(二)

本系列的第一篇: http://www.cnblogs.com/dhf327/p/4773672.html 100盏灯的问题,上次我们算是基本解决了,不管算法上是否够优化,至少我们已经在可接受的时间得到了答案. 但是最后还留了一道题,亲们,你们是不是已经想出来了? 一,上次的题目 上一篇给出了python求一个正整数的所有的因数的方法,这个方法目前工作正常,求单个正整数的所有因数速度上也没有任何问题. 但是结合上一篇最后的题目,有心的同学一下子就看出问题来了,1到10的12次方,假设求每个数的所

由100盏灯想到的(一)

原题目地址:http://www.cnblogs.com/DeanChopper/p/4772593.html 大厅里有100盏灯,每盏灯都编了号码,分别为1-100.每盏灯由一个开关来控制.(开关按一下,灯亮,再按一下灯灭.开关的编号与被控制的灯相同.)开始时,灯是全灭的.现在按照以下规则按动开关.第一次,将所有的灯点亮.第二次,将所有2的倍数的开关按一下.第三次,将所有3的倍数的开关按一下.以此类推.第N次,将所有N的倍数的开关按一下.问第100次按完以后,大厅里还有几盏灯是亮的. 网上找了

哪个开关控制哪盏灯

QUESTION: 房间里面有三盏灯,屋外有三个开关,分别控制着三盏灯,只有进入房间,才能看到哪盏灯是亮的.请问如何只进入房间一次,就能指明哪个开关控制哪盏灯??? ANSWER: 假设开关编号为A,B,C.打开开关A,但不进入房间:等过了大约若干分钟后,关闭开关A,并且打开开关B:同时迅速进入房间内,并且用手摸房间内不亮的两盏灯以确定哪盏灯发热.设[房间内亮着的灯.不亮但温度较高的灯.不亮但温度较低的灯]的编号分别为L1.L2.L3. 判断的结果是:开关A控制L2:开关B控制L1:开关C控制L

从150盏灯这道奥数题说起......

前段时间,成都9岁学生纠错奥赛名题这篇文章在网上爆红.本文不关注神童之类的新闻,仅仅从计算机实现的角度来验证题目正确性. 题目描述(需求描述): 150盏亮着的电灯,各有一个拉线开关控制,按顺序编号为1,2,3,-,150.将编号为3的倍数的灯的拉线各拉一下,再将编号为5的倍数的灯的拉线各拉一下,拉完后亮着的灯数为__盏. 使用暴力穷举法来获得正确答案: 为了简单期间,我们可以将150盏灯缩小10倍,变为15盏灯,这样就很容易用暴力穷举法来标记出灯的最终结果: 答案: 第一遍拉灭3的倍数,15÷

100人100盏灯(详解)

题:一百盏灯排成一排,初始状态是亮的, 编号为 1-100,100个人编号1-100.每个人从1号灯开始逐次走过这100盏灯.每个人只拉他对应编号的倍数的灯,问最后亮着几盏灯? 这是一道很经典的笔试题.频繁出现.下面是比较简洁的实现代码.已验证. 1 package 笔试; 2 3 public class 完全平方数100人和灯 { 4 public static void main(String[] args) { 5 boolean[] light=new boolean[100]; 6

轻松学习JavaScript四:JS点击灯泡来点亮或熄灭这盏灯的网页特效映射出JS在HTML中作用

我们开始解释JS在HTML中作用.对于因特网和视窗操作系统,JavaScript都意味着未来. (1)JavaScript:写入HTML输出 实例代码: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://ww

现在有100个标记过的电灯泡。第一个人经过这些灯时,点亮所有的灯,第二个人经过时每隔一盏灯就切换开关一次,第三个人经过时每隔两盏灯切换开关一次。请问,当第100个人经过时,还剩多少盏亮着的灯?

做了一个草图:10(纵10人)X10(横10栈灯) 第一个人:1 1 1 1 1 1 1 1 1 1第二个人:0 1 0 1 0 1 0 1 0 1第三个人:0 0 1 0 0 1 0 0 1 0第四个人:0 0 0 1 0 0 0 1 0 0第五个人:0 0 0 0 1 0 0 0 0 1第六个人:0 0 0 0 0 1 0 0 0 0第七个人:0 0 0 0 0 0 1 0 0 0第八个人:0 0 0 0 0 0 0 1 0 0第九个人:0 0 0 0 0 0 0 0 1 0第十个人:0 0

房间里有三盏灯问题解决方案

http://blog.csdn.net/pipisorry/article/details/36014835 question:房间里有三盏灯,屋外有三个开关,分别控制这三盏灯,只有进入房间,才能看到哪一个电灯是亮的.请问如何之进入房间一次,就能指明哪一个开关控制哪一个灯? 小解: 三个灯: 打开两个灯, 过一会关闭一个. 进去看亮着的, 不亮但是发热的,不亮也不发热的 .区别出来. 四个灯: 打开两个灯, 过一会关闭一个, 然后打开一个新的灯, 不亮但是发热的, 亮但是 不发热的, 亮而且发

屋子不大,一张床,一盏灯

朱自清在他的<荷塘月色>里写道:我爱热闹,也爱冷静:爱群居,也爱独处.生活中有些时候,并不需要热闹繁华.激情四射. 于是,我常常站在夕阳中,独自一人,看天际渐渐褪去时的那抹辉煌:看一身疲惫的倦鸟归巢:看残红下漫步的老人:看暮风中飞舞的红叶……此刻,忘却了功名利禄,抛开了滚滚红尘,有的黄鹤楼只是一种安详的幸福心境,一种佛禅的宁静意境,原来独处会有如此的美好. 时间在指尖悄悄地划过,独处虽有些寂寞,但是寂寞中却有一种充实满足的感觉.它是一种美丽的心境,如行云流水,无拘无束,是对人生中美好时刻和美好