本文共 816 字,大约阅读时间需要 2 分钟。
报数
100 任务要求 评论201 任务描述 任务描述 题目描述:有n人围成一圈,顺序排号。从第1个人开始报数(从1到3报数),凡报到3的人退出圈子,问最后留下的是原来的第几号的那位。 ####相关知识(略) ####编程要求 请仔细阅读右侧代码,结合相关知识,在Begin-End区域内进行代码补充。 输入初始人数n
输出最后一人的初始编号
####测试说明 样例输入:3
样例输出:2
#includeint main(void){ /*********Begin*********/ int n; int a[1000]; int flag=0,cnt; scanf("%d",&n); cnt=n; for(int i=1;i<=n;i++){ a[i]=1; } for(int i=1;;i++){ if(i==n+1){ i=1; } if(a[i]!=0){ flag++; }else{ continue; } if(flag%3==0){ a[i]=0; cnt--; } if(cnt==1){ break; } } for(int i=1;i<=n;i++){ if(a[i]!=0){ printf("%d",i); } } /*********End**********/ return 0;}
转载地址:http://rxnlf.baihongyu.com/