代码如下:
#include <iostream>
#include<list>
#include <algorithm>
using namespace std;
void Print(int &s)
{
cout<<s<<endl;
}
int main()
{
int m,n;
cin>>m;
cin>>n;
list<int> s1;
for(int i=1;i<=n;i++)
{
s1.push_back(i);
}
for_each(s1.begin(),s1.end(),Print);
int count=n;
int k=0;
while(1)
{
int step=m%s1.size()-1;
k=(k+step)%s1.size();
//cout<<"k:"<<k;
int i=0;
for(list<int>::iterator iter=s1.begin();iter!=s1.end();iter++)
{
//cout<<"i:"<<i;
if(i==k)
{
cout<<*iter<<"->";
s1.erase(iter);
count--;
break;
}
i++;
}
if(s1.empty())
break;
}
system("pause");
return 0;
}