- 1、本文档共13页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
会计学1约瑟夫环问题
输入格式: 第一行为一个整数T(2^15)表示测试次数,接着第二到T+1行分别为n,m和k的值。例:2 10 2 3输出格式: T行最后min(n,3)个出列的编号。结果:6 1 5第1页/共13页
问题背景这个问题是以弗拉维奥?约瑟夫斯命名的,它是1世纪的一名犹太历史学家。他在自己的日记中写道,他和他的40个战友被罗马军队包围在洞中。他们讨论是自杀还是被俘,最终决定自杀,并以抽签的方式决定谁杀掉谁。约瑟夫斯和另外一个人是最后两个留下的人。约瑟夫斯说服了那个人,他们将向罗马军队投降,不再自杀。第2页/共13页
n=12; k=4; m=3出列第3页/共13页
n=12; k=4; m=3出列第4页/共13页
第5页/共13页
解题方法思路:将n个人分别用1,2…,n表示,并存放于一个数组中,将出列的人的号码从数组中删除,并输出最后三个出列的号码。关键:(1)从第k个人开始报数,而非第一个人开始。 (2)当报到第n个人时,编号为1的人继续往下报数。 (3)显示出最后三个出列的人的编号。第6页/共13页
Josephus jp=new Josephus(); int a[]=new int[n]; for(int i=0;in;i++){ a[i]=i+1; } jp.SortArray(a,n,m,k,g); } public void show(int[]b,int g){ for(int i=b.length-g;ib.length;i++){ System.out.print(b[i]+ ); } } 算法设计第7页/共13页
public void SortArray(int[]a,int n,int m,int k,int g){ int[] b=new int[n]; int c=0; int i=k-2; while(true){ for(int j=0;jm;){ i=(i+1)%n; if(a[i]!=0){ j++; } }第8页/共13页
b[c]=a[i]; a[i]=0; c++; if(c==n) break; } System.out.print(“最后出列的3人: ); this.show(b,g); }}第9页/共13页
数据测试1.数据选择: 要求:n2^15; 1=k=n; 2.数据和结果显示: 总人数n5起始号码k2循环数m2最后出列的3人2 1 4总人数n10起始号码k2循环数m3最后出列的3人6 1 5总人数n20起始号码k6循环数m8最后出列的3人3 14 6总人数n30起始号码k4循环数m7最后出列的3人18 23 26第10页/共13页
数据测试总人数n48起始号码k6循环数m15最后出列的3人47 21 46总人数n68起始号码k34循环数m25最后出列的3人38 54 4总人数n105起始号码k73循环数m4最后出列的3人87 32 21总人数n120起始号码k16循环数m23最后出列的3人32 53 97总人数n300起始号码k80循环数m12最后出列的3人70 296 198总人数n500起始号码k12循环数m30最后出列的3人166 358 266第11页/共13页
实验总结:(1) 经过这次的实践,让我们明白了合作的重要性。(2)在程序设计初期,总会或多或少的出现问题,经过我们的耐心调试,不断地修改,慢慢地将程序设计较好的符合了要求。(3)当然其中还是会存在一些漏洞,需要进一步的改进。在计算机中是容不得丝毫的错误的,这也让我们学到了面对科学要持有严谨的态度,否则必定得不到应该有的结果。第12页/共13页
您可能关注的文档
- 纪念刘和珍君句子分析.pptx
- 纪念九一八主题班会精学习.pptx
- 纪念九一八主题班会.pptx
- 纪律做一名遵守纪律的中学生.pptx
- 纪律主题班会高中.pptx
- 纪律与自由主题班会.pptx
- 纪伯伦组歌浪之歌.pptx
- 级麻醉学研究生.pptx
- 级非谓语常用句型及练习.pptx
- 级钠的化合物定.pptx
- 2025年广州番禺职业技术学院单招计算机测试题库最新.docx
- 2025年广西工业职业技术学院单招计算机测试题库必考题.docx
- 2025年广东省江门市单招(计算机)测试题库必考题.docx
- 2025年广西卫生职业技术学院单招(计算机)测试模拟题库附答案.docx
- 2025年广东江门中医药职业学院单招计算机测试题库必考题.docx
- 2025年广西建设职业技术学院单招(计算机)测试题库附答案.docx
- 2025年晋中师范高等专科学校单招计算机测试模拟题库最新.docx
- 2025年无锡工艺职业技术学院单招(计算机)测试题库必考题.docx
- 2025年广东省惠州市单招(计算机)测试题库推荐.docx
- 2025年新疆生产建设兵团兴新职业技术学院单招计算机测试题库附答案.docx
文档评论(0)