求用java编写约瑟夫生死者游戏游戏

18:37 提问
约瑟夫环问题用java怎么解决,有简单点的方法吗
一组人(n)个,围成一圈,从某人开始数到滴三个的人出列,在接着从下一个人开始数,最终输出最终出列的人(约瑟夫环是一个数学的应用问题:已知n个人(以编号1,2,3,...,n)分别表示)围坐在一张圆桌周围。从编号k的人开始报数,数到m的那个人出列;他的下一个人又从1开始报数,数到m的那个人又出列:依此规律重复下去,知道圆桌周围的人全都出列。
按赞数排序
import java.util.S
public class countMethod {
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
//接收用户输入,获得总人数N
System.out.println("请输入参与的总人数:");
int N=sc.nextInt();
//接收用户输入,获得出列人员的编号M
System.out.println("请输入出列的人的编号:");
int M=sc.nextInt();
//建立布尔型的数组,长度为总人数
Boolean rs[]=new Boolean[N];
//初始化布尔型数组,初始值均为true
for(int i=0;i&N;i++){
//System.out.println(rs[i]);
int n=N;//剩余的人数
int m=0;//报数的编号
while(n&1){
for(int j=0;j&N;j++){
if(rs[j]){
//System.out.println(rs[j]);
//打印出最后留下来的人员的编号
for(int k=0;k&N;k++){
if(rs[k]){
System.out.println("最后留下的是第"+(k+1)+"号。");
不算输入输出,只有不到10行
int Joseph(int n, int m)
for (int i=2; i&=n; i++)
fn = (fn+m)%i;
----------------------biu~biu~biu~~~在下问答机器人小D,这是我依靠自己的聪明才智给出的答案,如果不正确,你来咬我啊!
这个不是很简单吗,自己写个,条件已经有了
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐 上传我的文档
 下载
 收藏
粉丝量:1824
该文档贡献者很忙,什么也没留下。
 下载此文档
约瑟夫生死游戏课程设计
下载积分:650
内容提示:约瑟夫生死游戏课程设计
文档格式:PDF|
浏览次数:103|
上传日期: 10:22:00|
文档星级:
全文阅读已结束,如果下载本文需要使用
 650 积分
下载此文档
该用户还上传了这些文档
约瑟夫生死游戏课程设计
关注微信公众号 上传我的文档
 下载
 收藏
粉丝量:22
该文档贡献者很忙,什么也没留下。
 下载此文档
正在努力加载中...
【精品】约瑟夫生死游戏课程设计(含源代码可以运行)
下载积分:750
内容提示:【精品】约瑟夫生死游戏课程设计(含源代码可以运行)
文档格式:DOC|
浏览次数:255|
上传日期: 22:35:47|
文档星级:
全文阅读已结束,如果下载本文需要使用
 750 积分
下载此文档
该用户还上传了这些文档
【精品】约瑟夫生死游戏课程设计(含源代码可以运行)
关注微信公众号约瑟夫生死游戏_百度文库
两大类热门资源免费畅读
续费一年阅读会员,立省24元!
约瑟夫生死游戏
阅读已结束,下载文档到电脑
想免费下载更多文档?
定制HR最喜欢的简历
下载文档到电脑,方便使用
还剩21页未读,继续阅读
定制HR最喜欢的简历
你可能喜欢java 实现约瑟夫环的实例代码
字体:[ ] 类型:转载 时间:
这一次是借鉴模仿别人写的代码,以前觉得不好将数据结构的链结构什么的迁移到java上来使用,但这一次确实让我感受到了可以自己构造数据结构,然后使用类似链的方式来解决约瑟夫环,有所顿悟。不多说,继续上代码
代码如下:import java.io.BufferedInputSimport java.util.ArrayLimport java.util.Limport java.util.Spublic class Josephus {&&& private static class Node{&&&&&&& int No;&&&&&&& N&&&&&&& public Node(int No){&&&&&&&&&&& this.No=No;&&&&&&& }&&& }&&& public static void main(String[] args) {&&&&&&& int totalNum,cycleN&&&&&&& List&Integer& list = new ArrayList&Integer&();&&&&&&& Scanner cin = new Scanner(new BufferedInputStream(System.in));&&&&&&& System.out.println("请输入总人数:");&&&&&&& totalNum=cin.nextInt();&&&&&&& System.out.println("请输入报数人数:");&&&&&&& cycleNum=cin.nextInt();&&&&&&& Node header = new Node(1);&&&&&&& Node pointer =&&&&&&& for(int i=2;i&=totalNi++){&&&&&&&&&&& pointer.next = new Node(i);&&&&&&&&&&& pointer = pointer.&&&&&&& }&&&&&&& pointer.next=&&&&&&& pointer=&&&&&&& while(pointer != pointer.next){&&&&&&&&&&& int i =2;&&&&&&&&&&& while(i&cycleNum){&&&&&&&&&&&&&&& pointer = pointer.&&&&&&&&&&&&&&& i++;&&&&&&&&&&& }&&&&&&&&&&& //list.add(pointer.next.No);&&&&&&&&&&& System.out.println("将序号"+pointer.next.No+"剔除。");&&&&&&&&&&& pointer.next=pointer.next.&&&&&&&&&&& pointer=pointer.&&&&&&& }&&&&&&& System.out.println("这是最后一个人:"+pointer.No);&&& }}
您可能感兴趣的文章:
大家感兴趣的内容
12345678910
最近更新的内容
常用在线小工具}

我要回帖

更多关于 java约瑟夫环问题 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信