博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
C++ 约瑟夫环问题
阅读量:5064 次
发布时间:2019-06-12

本文共 736 字,大约阅读时间需要 2 分钟。

约瑟夫环比较经典了

已知n个人(以编号1,2,3...n分别表示)围坐在一张圆桌周围。从编号

为k的人开始报数,数到m的那个人出列;他的下一个人又从1开始报数,
数到m的那个人又出列;依此规律重复下去,直到圆桌周围的人全部出列。

测试过的完整实现代码:

#include
using namespace std;struct node{ int num; node *next;};node *creat(int n){ node *q,*p,*head=NULL; for(int i=1;i<=n;i++) { p=new node; p->num=i; if(head==NULL) head=p; else q->next=p; q=p; } p->next=head; return p;}int main(){ int n,k,m; cin>>n>>k>>m; node *l,*q; l=creat(n); q=l; l=l->next; for(int i=1;i
next; } while(l->next!=l) { for(int i=1;i
next; } cout<
num<<"->"; q->next=l->next; delete l; l=q->next; } cout<
num<

 

转载于:https://www.cnblogs.com/calamus/p/5862309.html

你可能感兴趣的文章
ABAP工作区,内表,标题行的定义和区别
查看>>
《xxx重大需求征集系统的》可用性和可修改性战术分析
查看>>
Python 中 创建类方法为什么要加self
查看>>
关于indexOf的使用
查看>>
【转】JS生成 UUID的四种方法
查看>>
英语单词
查看>>
centos6.8下安装matlab2009(图片转帖)
查看>>
Mongo自动备份
查看>>
求助大神!怎样批量删除数据库表中某个字段中同样的一段字符!
查看>>
VMWARE虚拟机无法访问的三种方法分析
查看>>
enq: SQ - contention
查看>>
cer证书签名验证
查看>>
ant 安装
查看>>
新手Python第一天(接触)
查看>>
vue路由动态加载
查看>>
【原】UIWebView加载本地pdf、doc等文件
查看>>
iOS中ARC内部原理
查看>>
【bzoj1029】[JSOI2007]建筑抢修
查看>>
synchronized
查看>>
你不得不了解的应用容器引擎---Docker
查看>>