有100盏灯(它们的位置编号为1, 2 .. 99,100),刚开始全都是灭着的。第一次把所有的灯都打开,第二次把偶数位置上的灯灭了,第三次把位置是3的倍数的灯原来灭的打开,原来打开着的,灭了。第N次把位置是N的倍数的灯原来灭的打开,原来打开着的,灭了。问第100次后还有多少盏灯亮着的?
假设编号为8的灯,第一次打开,第二次偶数位置被灭掉,第三次不变,第四次打开,第五次不变,第六次不变,第七次不变,第八次灭掉,后面会一直不变。。。灯会在1,2,4,8位置上发生了变化。而1,2,4,8是8的约数。
所以就是分析编号的约数,约数一般都是成对出现的,除非有两个相同的约数,则可能约数的个数和为奇数。例如4的约数为(1,4),(2)。一共有奇数个约数,最后灯被打开,所以最后灯亮着的编号为1,4,9,16,25,36,49,64,81,100。