文章
43
粉丝
24
获赞
293
访问
6.6k
#include <bits/stdc++.h>
using namespace std;
int main(){
int n,s,m;//s个猴子开始报数,第m个猴子退出报数
while(cin>>n>>s>>m){
if(n==0)break;
vector<int>a(n);
for(int i=0;i<n;i++)
a[i]=i+1;
s=s-1;m=m-1;//猴子对应的数组下标,全部用下标来思考
while(a.size()>1){
s=(s+m)%a.size();//直接找到要出队的猴子
cout<<a[s]<<",";
a.erase(a.begin()+s);//s为要删除元素的下标
}
cout<<a[0]<<endl;
}
return 0;
}
登录后发布评论
暂无评论,来抢沙发