c语言题目;有n个人围成一圈,顺序排号。从第一个人开始报数(从1到3报数),凡报到3的人退出 。。。。
有n个人围成一圈,顺序排号。从第一个人开始报数(从1到3报数),凡报到3的人退出圈子,问最后留下的是原来第几号的那位。。这个题目到底最后求什么。请说详细点。谢谢了...
有n个人围成一圈,顺序排号。从第一个人开始报数(从1到3报数),凡报到3的人退出
圈子,问最后留下的是原来第几号的那位。。
这个题目到底最后求什么。请说详细点。谢谢了 展开
圈子,问最后留下的是原来第几号的那位。。
这个题目到底最后求什么。请说详细点。谢谢了 展开
2个回答
2015-08-29
展开全部
这个问题叫约瑟夫环问题。
n个人围成一圈,按顺序编号,分别为1、2、3..n。(你可以理解成每个人的座号)。
然后1号开始,每人依次报号。即
(这里假设n=5)
(前面是座号、后面是他报的号)
1:1
2:2
3:3(退出)
现在只剩下座号为1、2、4、5的人,从3的下一个开始报号
4:1
5:2
1:3(退出)
2:1
4:2
5:3(退出)
2:1
4:2
2:3(退出)
最后剩下4,就是当n=5时,你要得到的值是4
n个人围成一圈,按顺序编号,分别为1、2、3..n。(你可以理解成每个人的座号)。
然后1号开始,每人依次报号。即
(这里假设n=5)
(前面是座号、后面是他报的号)
1:1
2:2
3:3(退出)
现在只剩下座号为1、2、4、5的人,从3的下一个开始报号
4:1
5:2
1:3(退出)
2:1
4:2
5:3(退出)
2:1
4:2
2:3(退出)
最后剩下4,就是当n=5时,你要得到的值是4
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询