ex7_10_1.cpp

来自「c++程序设计教材第二版书上即课后习题源代码」· C++ 代码 · 共 15 行

CPP
15
字号
/*约瑟夫(Josephus)问题:一群猴子围成一圈,从第1只猴子起顺时针数到第m个猴子时,该猴子便出围。
继续不断数下去,猴子不断出围,最后剩下的一只猴子就是猴大王。问猴大王是第几只猴子?算法的关键是
如何用数组表示圆圈,方法就是"加1求模"。可以给顺序表模板类添加一个Josephus()成员函数实现该算法。*/
#include<iostream>
using namespace std;
#include"Ex7_10_1.h"

int main(){
	seqlist <int> seq;
	int a,m;
	cout<<"请输入猴子总数和报数停止数:"<<endl;
	cin>>a>>m;
	cout<<"猴大王下标为:"<<seq.Josephus(a,m)<<endl;
	return 0;
}

⌨️ 快捷键说明

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