联系我们 - 广告服务 - 联系电话:
您的当前位置: > 综合 > > 正文

全球热门:杀人游戏:用循环数组解决约瑟夫环问题

来源:CSDN 时间:2023-03-07 14:01:12


(相关资料图)

用循环数组解决约瑟夫环问题

首先我们得知道约瑟夫环是什么,其实我们就可以通过杀人游戏来了解。/ 游戏简介:相传有一个海盗,不仅仅掠夺商船的财务,而且还将船上的无辜人杀掉,有一天掳来的一批人中有一个数学家出了一个主意,让所有人站成一个圈开始报数,让海盗说一个恶魔数字,人开始遇到报的数与恶魔数字相同就拉出去杀掉,然后继续报数,遇到恶魔数字就拉出去杀掉,直到剩下一个人,数学家表示,不管说道哪个恶魔数,自己都能安全的留下,如果自己每次能安全留下就证明自己是上帝派来拯救他的人,就得放了这些人,最后数学家成功了,拯救了一批人。// 比如:有四个人,恶魔数字为2,他们的序号分别为1,2,3,4,则第一个被杀掉的人是2剩下1,2,4,第二个被杀的是4剩下1,3,第三个被杀掉的是3,1则是最后被杀掉。

那他是如何成功的呢?真的是上帝派来的吗!当然不是!!!

其实我们可以用C语言来了解这一现象 首先它是一个圈组成,那不停地在圈里转如何来实现呢? 如此我们就需要知道循环数组的实现:

int array[N];    for (int i = 0; i < N; i = (i+1)%N {    }

接下来我们要思考循环停止的条件,以及如何表示并处理杀人 循环终止条件:没人可杀,即count为0; 处理杀人:初始人都赋值为0,被杀赋值为1; 则最后为的代码为 运行结果为

这是比较繁琐的代码,下一期将会写比较简洁的约瑟夫杀人游戏,谢谢!!!

责任编辑:

标签:

相关推荐:

精彩放送:

新闻聚焦
Top