共2007只灯均亮每只有个开关第一次按2倍数灯开关第二次按3倍数灯第三次按5倍数灯最后亮灯有几只

问题描述:

共2007只灯均亮每只有个开关第一次按2倍数灯开关第二次按3倍数灯第三次按5倍数灯最后亮灯有几只

题目不清楚,同一个灯是否 可能被 关一次再开一次 ,或者 关一次开一次关一次? 是不是题目出题没描述清楚

第一次按2倍数灯开关,则2倍数的灯灭掉,其他亮;
第二次按3倍数灯开关,则3倍数的灯灭掉,但是6倍数的灯亮了;
第三次按5倍数灯开关,则5倍数的灯灭掉,10倍数的亮,15倍数的亮,30的倍数灭掉;
2007共有30的倍数的数有66个,
2007共有15的倍数的数有133个,
2007共有10的倍数的数有200个,
2007共有5的倍数的数有401个,
2007共有6的倍数的数有334个,
2007共有3的倍数的数有669个,
2007共有2的倍数的数有1003个;
所以最后亮的灯数为2007-1003-669+334-401+200+133-66=535

看错了

自己到网上搜:容斥原理
相关内容就是.
n=2007..
所求=n-[n/2]-[n/3]-[n/5]+[n/6]+[n/10]+[n/15]
-[n/30]
其中[x]是高斯函数.表示不超过x的最大整数.
公式方法都告诉你了,自己算吧

第一次之后,有(2007+1)/2=1004盏亮
第二次之后,2007个数字中有669个是3的倍数,其中包含了334个同时是2的倍数,所以剩下了1004-(669-334)=669
第三次之后,2007个数字中有401个5的倍数,其中包含了200个同时是2的倍数,包含了133个同时是3的倍数,其中包含了66个同时是2的倍数、3的倍数
那么最后剩下的灯有:
669-(401-200-133+66)
=535

1003+669+401-334-200-133+66=1472

2007/2=1003...1
2007/3=669
2007/5=401...2
2007/2*3=334...3
2007/2*5=200...7
2007/3*5=133...4
2007/2*3*5=66...27
下面的自己做

2007中2的倍数有1003个
2007中3的倍数有669个
2007中5的倍数有401个
2007中6的倍数有334个
2007中10的倍数有200个
2007中15的倍数有133个
2007中30的倍数有66个
所以还有2007-1003-669-401+334+200+133-66*2=469个

关了之后还能开不?能开的话是1004个,先把灯泡编号1-2007,关2的倍数时,只剩1004个奇数号的灯,关3的倍数也就是3,6,9,12,每关一个正好开一个最后一个是2007,所以减一个还剩1003个,然后关5的倍数5,10,15,20,25,30,正好关三个,开三个,5的倍数有401个除6余5,第六个应该是关,因为没有所以相当于开了一个,加上1,正好3的倍数关的和5的倍数开的抵消,还是第一次关的,因此是1004

共2007只灯均亮每只有个开关第一次按2倍数灯开关第二次按3倍数灯第三次按5倍数灯最后亮灯有几只
2*3*5=30,
2010/30=67,
30以内
不是2的倍数的占1/2=15个,
再不是3的倍数占2/3=10个,
再不是5的倍数占4/5=8个.
67*8=536个,
再测试第2008,2009,2010,中只有2009是亮的,
536-1=535个亮的.