一群人围成一圈,123进行报数,当报到3的人出列,求最后留下的是谁
#include<stdio.h>
#define N 10//假设有10人
int main()
{
int m=N,count=0;
int a[N];
for(int i=0;i<N;i++){
a[i]=1;//数组全部置一
}
while(m!=1){
for(int i=0;i<N;i++){
if(a[i]==0){continue;}//直接跳过已经出列的
count++;
if(count==3){a[i]=0;count=0;m--;}//当报数为3的a[i]=0;
}
}
for(int i=0;i<N;i++){
if(a[i]==1){
printf("%d",i);//最后一个人也是数组最后没有置零的那位了
}}
// printf("Hello world!");
return 0;
}