(2)约瑟夫问题.cpp

来自「一些数据结构算法的例子」· C++ 代码 · 共 29 行

CPP
29
字号
#include<iostream.h>
void main()
{
	char Next[1000];
	int m,n,u,Now=0,s=0;
	cout<<"Input n:"<<endl;
	cin>>n;
	cout<<"Input m:"<<endl;
	cin>>m;
	for(u=0;u<n-1;u++)
		Next[u]=u+1;
	Next[n-1]=0;
	while(Now!=Next[Now])
	{
		if(s==0)
		{
			for(u=0;u<m-2;u++)
				Now=Next[Now];
			s=1;
		}
		else
			for(u=0;u<m-1;u++)
				Now=Next[Now];
		cout<<(int)Next[Now]+1<<' ';
		Next[Now]=Next[Next[Now]];
	}
	cout<<Now+1;
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?