#include<iostream>
using namespace std;
void Joseph(int n,int m,int s);
int main()
{
Joseph(9,3,1);
return 0;
}
void Joseph(int n,int m,int s)
{
int i,j,w;
int s1=s;
int a[100]={0};
for(i=0;i<n;i++)
{
a[i]=i+1;
}
for(i=n;i>=2;i--)
{
s1=(s1+m-1)%i;
if(s1==0)
{
s1=i;
}
w=a[s1-1];
for(j=s1;j<i;j++)
{
a[j-1]=a[j];
}
cout<<w<<endl;
}
}
【C/C++ 机试】约瑟夫环--报数
最新推荐文章于 2024-09-25 19:16:13 发布