约瑟夫环问题 末蓝、 2022-06-08 03:19 192阅读 0赞 约瑟夫环问题 【问题描述】 有 M 个人,其编号分别为 1-M。这 M 个人按顺序排成一个圈。现在给定一个数 N,从第一个人开始依次报数,数到 N 的人出列,然后又从下一个人开始又从 1 开始依次报数,数到 N 的人又出列...如此循环,直到最后一个人出列为止。 【输入格式】 输入只有一行,包括 2 个整数 M,N。之间用一个空格分开(0 < n <= m <= 100)。 【输出格式】 输出只有一行,包括 M 个整数 【样列输入】 8 5 【样列输出】5 2 8 7 1 4 6 3 ![20170913130727382][] #include<iostream> using namespace std; struct node{ long d; node *next; }; long n,m; node *head,*p,*r; int main() { long i,j,k,l; cin>>n>>m; head=new node; head->d=1; head->next=NULL; r=head; for(i=2;i<=n;i++)//建立模循环链表 { p=new node; p->d=i; p->next=NULL; r->next=p; r=p; } r->next=head; r=head; for(i=1;i<=n;i++) { for(j=1;j<=m-2;j++) { r=r->next; } cout<<r->next->d<<" "; r->next=r->next->next;//删除结点 r=r->next; } } 代码2:用数组模拟链表 ![20170913161117226][] #include<iostream> using namespace std; int a[110]; int main() { int n,m; cin>>n>>m;//人数和报数 for(int i=1;i<n;i++) a[i]=i+1;//创建模拟链表 a[n]=1;//构成循环链表 int p=0;//计数,看有多少个数已经出列 int j=n; while(p<n)//当链表里面还有数 { int k=1; while(k<m)//当数到m时 { j=a[j]; k++; } cout<<a[j]<<" ";//输出数 a[j]=a[a[j]];//删除链表中的数 p++;//链表中出列的数加1 } } [20170913130727382]: /images/20220608/8d14fbfbe9764b88a3da6333c21ad8d9.png [20170913161117226]: /images/20220608/83760a8a2250447485852f83f1bb3f5f.png
相关 约瑟夫环问题 约瑟夫环问题 【问题描述】 有 M 个人,其编号分别为 1-M。这 M 个人按顺序排成一个圈。现在给定一个数 N,从第一个人开始依次报数,数到 N 的人出列,然后又从下一个 末蓝、/ 2022年06月08日 03:19/ 0 赞/ 193 阅读
相关 约瑟夫环问题 list1 = [1 for _ in range(30)] 用1代表活人,0代表死人,先创建一个30个活人的列表 index = 0 索引,用来遍历 青旅半醒/ 2022年05月30日 10:39/ 0 赞/ 168 阅读
相关 约瑟夫环问题 ![这里写图片描述][70] public class Solution { //约瑟夫环问题 public int LastRema 曾经终败给现在/ 2022年05月24日 01:53/ 0 赞/ 200 阅读
相关 约瑟夫环问题 问题描述: N个人围成一圈,从第一个开始报数,第M个将淘汰,退出圈外,重复上述过程n-1次,最后剩下一个,最后留下来的人获胜。求出最后获胜者的编号。 if __n ╰+哭是因爲堅強的太久メ/ 2022年05月17日 01:20/ 0 赞/ 138 阅读
相关 约瑟夫环问题 约瑟夫环问题 / n个人(编号 1...n),先去掉第m个数,然后从m+1个开始报1, 报到k的退出,剩下的人继续从1开始报数.求胜利者的编号. 适用数据范围较小 谁借莪1个温暖的怀抱¢/ 2022年05月15日 02:44/ 0 赞/ 157 阅读
相关 约瑟夫环问题 / 约瑟夫环问题(Josephus) 用户输入M,N值,从1至N开始顺序循环数数,每数到M输出该数值,直至全部输出。写出C程序。(约瑟夫环问题 Joseph 青旅半醒/ 2022年03月27日 14:54/ 0 赞/ 241 阅读
相关 约瑟夫环问题 先贴着 慢慢研究 : [https://www.cnblogs.com/cmmdc/p/7216726.html][https_www.cnblogs.com_cmmdc_ àì夳堔傛蜴生んèń/ 2022年03月17日 14:14/ 0 赞/ 200 阅读
相关 约瑟夫环问题 转载自[https://my.oschina.net/jack90john/blog/1791110?p=1][https_my.oschina.net_jack90john_ 拼搏现实的明天。/ 2022年03月01日 04:12/ 0 赞/ 227 阅读
相关 约瑟夫环问题 ![ContractedBlock.gif][] ![ExpandedBlockStart.gif][] 1 include <iostream> 2 今天药忘吃喽~/ 2021年12月13日 02:45/ 0 赞/ 284 阅读
相关 约瑟夫环问题 问题描述 1 - n 个人围坐一圈,约定编号为k的人开始报数,数到m的那个人出列,直到所有人出列,由此产生一个队编号的序列 问题分析 1. 先构造一个环形的单向 叁歲伎倆/ 2021年11月01日 22:40/ 0 赞/ 309 阅读
还没有评论,来说两句吧...