约瑟夫环

!!每次杀掉人之后,将被杀掉人后一个人作为开头,其序号变成0!!

 

从N个人到N-1个人

把序号为M的人的序号变成了0

所以从N-1个人返回N个人的时候

仍然存活的人的序号应该+M,然后%N

 

因为1个人的时候,存活的人的编号为0

那么2个人的时候,存活的人的编号为(f(1)+M)%2

3个人的时候,存活的人的编号为(f(2)+M)%3

 

由此可以得到f(N)的值

从而求出N个人,M为间隔的约瑟夫环问题最后存活的人的序号

posted @ 2020-03-30 17:59  rxh1999  阅读(129)  评论(0编辑  收藏  举报