100 盏灯,全部关闭,第一人全部打开(亮),第二个人隔一个按开关(2、4、6、8、10), 第三个人隔 2 个按开关(3、6、9、12),以此类推,第 100 人路过时有几盏灯亮着?
根据题意简单实现。不知道对不对。。
nums = [1 for _ in range(100)]
mark = 1
i = 2
while i <=100:
while mark<100:
if nums[mark]:nums[mark]=0
else:nums[mark]=1
mark+=i
mark = i
i+=1
count=0
for i in nums:
if i:count+=1
print(count)