火影宇智波鼬同人文:哪位数据结构高手帮忙呀!新编约瑟夫环问题

来源:百度文库 编辑:高校问答 时间:2024/04/28 20:29:23
我们使用的是c++语言
问题我没有看懂亚

题目:新编约瑟夫环问题
1.问题描述
在很久以前,有一位船长带着他的15位亲戚出海旅游,同船还超载了其他15位乘客。途中忽遇大风浪,船就要淹没,必须有一半人跳下大海减轻船的载重量,才能使其余的人幸免于难,但没有人作出牺牲。有人提议30个人围成一圈,从第一个位置开始报数,将报9的倍数的人投入大海,其余人继续报数,如此进行下去,直到剩下15个人为止。但没有人这么傻,肯站在9、18、27等位置上,此法难以实行。最后大家同意了船长的建议,即船长将30人按照某种次序排成一圈,1至9和1至11报数的同时从第一个位置开始进行,将报9者投入大海,有人报11时,将最近下海者救起,插在报11者之后。刚救起者不参加本轮报数。如某人同时报9和11的倍数,那么该人仍站在原先的位置不动。此方法循环执行下去,最后留下来的人一看,全是船长和他的亲戚们。
2.要求
编写程序回答问题:船长将他的亲戚安排在什么位置?是否存在这样的好位置,站在该位置上的人甚至不曾喝过一口海水?如何修改救人的策略,将最先入海的人救起,生者和死者的位置序号又各为几?处在什么位置上,不论采用哪种救人策略都能最后生存下来?
是的,我是计算机专业的亚

楼主是计算机系的?