2

有5名成员围坐在一张桌子旁。关键值是围坐在桌子旁的成员数量。所以现在关键值是 5。一个恐怖分子告诉成员,因为你是 5 个成员,我将从第一个成员开始数,被数为 5 的人将被枪杀。他数数,第五个人死了。他再一次数到五,第一个人就死了。他又数了一遍,第三个人死了,现在剩下了2和4。他数了数他们之间的不,最后4算5,他被枪杀了。最后剩下的人是2。

同样,如果尝试 7 人,答案将是 8。对于 8 人,答案将是 4。

如何为此设置公式,以便计算机可以正确拍摄人。

我猜它可能通过给成员一个令牌值而在一个循环链表中。但我无法得出一个等式。因此,通过给出关键值,将确定将要活下去的人。

4

3 回答 3

4

这被称为约瑟夫斯问题

于 2011-05-25T08:37:22.930 回答
3

这是一个众所周知的问题,称为约瑟夫斯问题。检查wikipediamathworld以获得可能的解决方案。你可以使用谷歌搜索大量关于它的文章。

于 2011-05-25T06:55:01.800 回答
1

这是一个名为约瑟夫斯问题的经典问题。它有递归解决方案:

J (1) = 1 ; 这是基础

当 n 为偶数时 J(2n) = 2J(n) - 1

当 n 为奇数时 J(2n + 1) = 2J(n) + 1

于 2015-03-05T17:52:42.920 回答