首页 > 试题广场 >

题目:有n个人围成一圈,顺序排号。从第一个人开始报数(从1到

[问答题]

题目:有n个人围成一圈,顺序排号。从第一个人开始报数(从1到3报数),凡报到3的人退出圈子,问最后留下的是原来第几号的那位。

#include<iostream>  
using namespace std;  
int main(){  //数学解法
    int n;  
  cin>>n;  
  int r=0;  
  for(int i=1;i<=n;i++){  
    r=(r+3)%i;  //上一轮编号
  }  
  cout<<r+1<<endl;
  return 0;
}  


发表于 2021-10-11 15:50:37 回复(1)