假如有1500盏灯,它们的开关按1-1500进行编号,一开始都是亮着的,我们按照如下步骤操作:
1. 切换编号为2的倍数的开关
2. 切换编号为5的倍数的开关
3. 切换编号为7的倍数的开关
最终还有多少盏灯亮着?
#include <stdio.h> int main() { int L[1501]={0}; //0 is on int i; int count=0; for(i=1;i<1501;i++) { if(i%2==0) { if(L[i]==0) L[i]=1; else L[i]=0; } } for(i=1;i<1501;i++) { if(i%5==0) { if(L[i]==0) L[i]=1; else L[i]=0; } } for(i=1;i<1501;i++) { if(i%7==0) { if(L[i]==0) L[i]=1; else L[i]=0; } } for(i=1;i<1501;i++) { if(L[i]==0) count++; } printf("%d\n",count); return 0; }