假设有一圈石子,从1到n比较。然后依次每隔一个石子选出一个,直到剩余一个;问最后选出的石子的编号是多少; (至少)有三种方法可以解决这个问题;如下面的代码所示: object?App?extends?App?{
??def?...
分类:
其他好文 时间:
2015-07-12 09:53:14
阅读次数:
137
/* assume a header *//* 双向循环链表 */struct Node;typedef struct Node * PtrToNode;typedef PtrToNode List;typedef PtrToNode position;struct Node{ PtrToNo...
分类:
其他好文 时间:
2015-07-09 21:26:36
阅读次数:
175
约瑟夫环问题的原来描述为,设有编号为1,2,……,n的n(n>0)个人围成一个圈,从第1个人开始报数,报到m时停止报数,报m的人出圈,再从他的下一个人起重新报数,报到m时停止报数,报m的出圈,……,如此下去,直到所有人全部出圈为止。当任意给定n和m后,设计算法求n个人出圈的次序。稍微简化一下。 .....
分类:
其他好文 时间:
2015-07-09 06:15:54
阅读次数:
86
问题描述n个数字(0,1,...,n-1)形成一个圆圈,从数字0开始。每次从这个圆圈中删除第m个数字,然后从被删除的下一个继续删除第m个元素,以此类推。直到最后剩下一个数字,求出该数字。解决思路1. 使用循环链表模拟这一过程,计数器计数;2. 递归思路(图片来源:http://www.cnblogs...
分类:
其他好文 时间:
2015-07-06 12:05:52
阅读次数:
104
http://acm.uestc.edu.cn/#/problem/show/525猴子选大王Time Limit: 3000/1000MS (Java/Others) Memory Limit: 65535/65535KB (Java/Others)SubmitStatus有m个猴子围成一圈,按....
分类:
其他好文 时间:
2015-06-20 00:14:11
阅读次数:
261
题目:约瑟夫环,有一个环先删掉第一个元素,然后每隔m个数字删掉,问最后剩下的是2号元素,
则应该去的最小m为多少。
分析:数论,模拟。将元素编号0~n-1,最后剩下编号的递推关系:f(i,m)=(f(i-1,m)+m)%i。
因此,问题转化成n-1元素,剩下第一个元素的约瑟夫环,按循序枚举m找到第一个成立的即可。
说明:╮(╯▽╰)╭。
#...
分类:
其他好文 时间:
2015-06-18 11:42:40
阅读次数:
119
约瑟夫环(约瑟夫问题)是一个数学的应用问题:已知n个人(以编号1,2,3…n分别表示)围坐在一张圆桌周围。从编号为k的人开始报数,数到m的那个人出列;他的下一个人又从1开始报数,数到m的那个人又出列;依此规律重复下去,直到圆桌周围的人全部出列。通常解决这类问题时我们把编号从0~n-1,最后结果+1即为原问题的解。数组方式假设下标从0开始,0,1,2 .. m-1共m个人,从1开始报数,报到k则此人从...
分类:
其他好文 时间:
2015-06-15 16:30:06
阅读次数:
153
一、实验内容
约瑟夫(Joseph)问题的一种描述是:编号为1,2,…,n的n个人按顺时针方向围坐一圈,每人持有一个密码(正整数)。开始任选一个正整数作为报数上限值m,从第一个人开始按顺时针方向自1开始顺序报数,报到m时停止报数。报m的人出列,将他的密码作为新的m值,从他在顺时针方向上的下一个人开始重新从1报数,如此下去,直至所有人全部出列为止。试设计一个程序求出出列顺序。
二、实验目的
掌握...
分类:
编程语言 时间:
2015-06-15 11:24:15
阅读次数:
136
问题来历编辑
据说著名犹太历史学家 Josephus有过以下的故事:在罗马人占领乔塔帕特后,39 个犹太人与Josephus及他的朋友躲到一个洞中,39个犹太人决定宁愿死也不要被敌人抓到,于是决定了一个自杀方式,41个人排成一个圆圈,由第1个人开始报数,每报数到第3人该人就必须自杀,然后再由下一个重新报数,直到所有人都自杀身亡为止。然而Josephus 和他的朋友并不想遵从。一开始要站在什么...
分类:
编程语言 时间:
2015-06-14 09:36:42
阅读次数:
173