这道题只要求第n盏灯的状态,简化了很多。
#include<iostream>
using namespace std;
int main(){
int n,lamp,i;
while(scanf("%d",&n)!=EOF){
lamp=0;
for(i=1;i<=n;i++){
if(n%i==0){
if(lamp==0)
lamp=1;
else
lamp=0;
}
}
printf("%d\n",lamp);
}
return 0;
}