C++新版新约瑟夫问题题

将1-M这M个自然数按由小到大的顺序沿顺时针方向围城一圈以S为起点,先沿顺时针方向数到第N个数就出圈然后再沿逆时针方向数到第K个数再出圈,再沿顺时针方向数到第N個数就出圈然后再沿逆时针方向数到第K个数再出圈……这样按顺时针方向和逆时针方向不断出圈,直到全部数都出圈为止
请打印先后絀圈的数的序列。
4行每行一个自然数,分别表示M,S,N,K值都不超过1000.
一行包含N个正整数,之间用一个空格隔开表示先后出圈的数的序列。

//开始所有人都在圈内 //顺时针数到n时输出当前的数字i,报数变为0 //顺时针变逆时针,下一个报数的人为i-1,剩余人数-1 //如果已经到了第m个数字要從第一个数字开始数 //逆时针数到k时,输出当前的数字i报数变为0, //逆时针变顺时针下一个报数的人为i+1,剩余人数-1 //如果已经到了第1数字,要從第m个数字开始数

格式:DOC ? 页数:6页 ? 上传日期: 10:56:53 ? 浏览次数:86 ? ? 1000积分 ? ? 用稻壳阅读器打开

全文阅读已结束如果下载本文需要使用

该用户还上传了这些文档

我要回帖

更多关于 约瑟夫问题 的文章

 

随机推荐