题目:一百个灯泡排成一排,第一轮将所有灯泡打开;第二轮每隔一个灯泡关掉一个。即排在偶数的灯泡被关掉,第三轮每隔两个灯泡,将开着的灯泡关掉,关掉的灯泡打开。依次类推,第n轮结束的时候,还有几盏灯泡亮着。
1 #include <iostream> 2 using namespace std; 3 int main() 4 { 5 int a[100]; 6 for(int i=0;i<10;i++) 7 a[i]=0; 8 int n; 9 for(n=1;n<=10;n++) 10 { 11 for(i=0;i<10;i++) 12 { 13 if((i+1)%n==0) 14 { 15 if(a[i]==0){a[i]=1;break;} 16 if(a[i]==1)a[i]=0; 17 18 } 19 20 } 21 }int s=0; 22 for(i=0;i<100;i++) 23 if(a[i]==1) 24 { 25 s++; 26 } 27 cout<<s; 28 29 }