开灯问题

来源:互联网 发布:网络直播策划案 编辑:程序博客网 时间:2024/05/02 22:41

代码:

#include<stdio.h>
int main()
{
 int a[1001];
 int n,k,i,j;
  while(scanf("%d %d",&n,&k)!=EOF) 
 {
 for(i=1;i<=n;i++)
  a[i]=0;
 for(j=1;j<=k;j++)
 {
  for(i=1;i<=n;i++)
  if(i%j==0) a[i]=1-a[i];
 }
 for(i=1;i<=n;i++) 
  if(a[i]==1) printf("%d ",i);
  printf("\n");
  }
  return 0;
}

主要用到数组a[i];灯开着用a[i]==1;灯灭a[i]==0;用循环语句计算a[i]=1-a[i];进而处理k个人开关灯的问题。