#include <iostream>
using namespace std;
int jp(int n,int s,int m)//n 表示一圈多少人,s表示从第几个开始数,m表示淘汰第几个
{
int ans;
int *A=new int[n];
for(int i=0;i<n;i++)
A[i]=i+1;
for(int k=n;k>1;k--) //n-1次出局后,就是结果
{
int choice=(s-1+m-1)%k; //出局人的数组元素下标
s=choice+1;
if(s==k)
s=1;
if(choice!=k-1)
{
// cout<<A[choice]<<","; //依次删除
for(int m=choice;m<k-1;m++)//出局人删除,依次向前移动一个位置
A[m]=A[m+1];
}
}
ans=A[0];
delete []A;
return ans;
}
int main()
{
cout<<jp(100,2,7)<<endl;
return 0;
}