我的代码:循环队列
#include<stdio.h>
#include<stdlib.h>
int main(){
int n,m,x=-1,num=1;
scanf("%d %d",&n,&m);
int queue[n];
int rear=0,front=0;
for(int i=0;i<m;i++){
scanf("%d\n",&x);
if(!x){
queue[rear]=num++;
}
else{
queue[rear]=queue[front];
front=(front+1)%n;
}
rear=(rear+1)%n;
}
printf("%d",queue[front]);
for(int j=0;j<n-1;j++){
front=(front+1)%n;
printf(" %d",queue[front]);
}
return 0;
}