无标题.jpg
# include <stdio.h>
int main(){
int N, M;
int i, j, k;
scanf("%d %d", &N, &M);
int n[5000] = {0}; //设0为硬币正面,1为反面。只使用1-N的数组部分
for (i=1;i<=M;i++){ //M个人,一次翻硬币
for (j=1;j<=N;j++){
if (j % i == 0){
if (n[j]==1)
n[j]=0;
else
n[j]=1;
}
}
printf("第%d个人", i);
for (k=1;k<=N;k++) printf("%d ", n[k]);
printf("\n");
}
for (i=1;i<=M;i++){
if (n[i]==0) printf("%d ", i);
}
}