#include <stdio.h>
#define zz 1000
int main()
{
int n,man[zz];
scanf("%d",&n);
int i;
for(i=0;i<n;i++){
man[i]=1;
}//当man[i]=1,表示未报3,此循环表示从第一个人0到第n个(n-1)都是1(未报)
i=1;
int j,k;
for(j=0;;j++){
if(j == n) j=0;//当j为n时变为0
if(man[j]){//判断第j-1个人是否喊过
if(i%3 == 0) man[j]=0;//喊3的人变0 ,此处i用于检测是否为3的倍数
i++;
}
int exit=0;
for(k=0;k<n;k++){
if(man[k]) exit++;
}
if(exit == 1) break;//检测是否只剩一个元素,跳出循环
}
for(i=0;i<n;i++){
if(man[i]){
printf("%d",i+1);
break;
}
}//输出人编号
return 0;
}
0.0分
0 人评分
C语言程序设计教程(第三版)课后习题11.1 (C语言代码)浏览:676 |
校门外的树 (C语言代码)浏览:956 |
C语言训练-尼科彻斯定理 (C语言代码)浏览:463 |
【计算两点间的距离】 (C语言代码)浏览:1473 |
C语言程序设计教程(第三版)课后习题3.7 (C语言代码)浏览:561 |
C语言程序设计教程(第三版)课后习题10.3 (C语言代码)浏览:1906 |
第三届阿里中间件性能挑战赛-总决赛亚军比赛攻略浏览:1144 |
分解质因数 (C++代码)浏览:1469 |
母牛的故事 (C语言代码)浏览:478 |
C语言程序设计教程(第三版)课后习题1.5 (C语言代码)浏览:449 |