智力题(数学好的进)

来源:百度知道 编辑:UC知道 时间:2024/05/29 04:18:25
有40个人集体自杀,从1号开始往下轮回的数1、2、3,数到3的人自杀,最后剩下一个人,请问是多少号?(我问的不是结果,而是计算的过程,拿笔划的就别费功夫了)
大家好像误解我的意思了,我换个数字41个人吧,当第41号最后数2的时候,第二轮第1号数3,然后一直数下去,并不是一直都是1号数1.

晕,楼主收到你的消息我又核查了一下,好象没错,当所剩人数是3的N次方时,头一个数1的人就是最后剩下来的人
所以41-27=14,14*3+1=43,43-41=2,2号是最后剩下的

1号,为什么不用说了吧?想想就知道

(1)先把40人编号。
(2)第一轮死的是编号3的倍数的人,余下27人
(3)这时40号人数1,那么第二轮死的是编号2,5,8……的人,剩下18人
(4)这时40号依然是数1的人,所以在之后的几轮中40和1号是安全的
(5)最后剩下40 和 1 号的时候,40号数1 ,1号数2,40号再数3
所以最后剩下的是1号。

这个就是计算机里面的一个经典算法--猴子选大王

M=40 n=3
int King(int M,int n)
{
//总数M,数到N个排除
int k =0;
for(int i=2;i<=M;i++)
k = (k+N)%i;
return ++k;
}

用计算机的算法语言就是这么表达,用数学来表达有点难度了。。。。