`
michelecindy
  • 浏览: 169176 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

5n个人围成圈,报数为m的出局顺序问题

    博客分类:
  • Java
阅读更多
import java.util.ArrayList;
import java.util.List;

public class TestCircle {
  public static void to(int total, int number) {
    List<Integer> list = new ArrayList<Integer>(total);
    for (int i = 1; i <= total; i++) {
      list.add(i);
    }
    int begin = -1;
    while (total > 0) {
      begin += number;
      System.out.println(list.remove(begin % total));
      begin = (begin % total) - 1;
      total--;
    }
  }

  /**
   * @param args
   */
  public static void main(String[] args) {
    TestCircle.to(10, 3);
  }
}
分享到:
评论

相关推荐

    Python使用列表完成程序的编写:有n个人围成一圈,顺序排号。从第一个人开始报数(从1到m报数),凡是报到m的人退出圈子,问最后留下的是原来第几号的人。

    看了挺多博客感觉都挺复杂的,自己写这个自认为比较简单,也更灵活,希望可以帮到需要的人,... circle.append(circle.pop(0)) #把已报数的人取出放到队尾,以此实现围成圈循环往复 num+=1 if num==m: del circle[0]

    约瑟夫环问题求解代码code.docx

    约瑟夫环问题描述:编号为1,2,…,n的n个人按顺时针方向围成一圈,每人持有一个密码(正整数)。一开始任选一个正整数作为报数上限值m,从第一个人开始按顺时针方向自1开始报数,报到m时停止报数,报m的人出列,将...

    10 人围坐成一圈报数淘汰游戏

    10 人围坐成一圈(假设他们的编号沿顺时针方向依次为 1 到 10) 。编程序,使用数组来存放各数据(人员编号),从1号人员开始数起(沿顺时针方向),当数到 k 时(其中 k&gt;1,由用户通 过 cin 输入指定),则该号人员...

    有10个小孩围成一圈并依次编号,教师指定从第2个小孩开始报数,报到第3个小孩即令其出列

    有10个小孩围成一圈并依次编号,教师指定从第2个小孩开始报数,报到第3个小孩即令其出列。然后从下一个孩子继续报数,数到第3个小孩又令其出列,如此直到所有的孩子都出列。求小孩出列的先后顺序。

    丢手帕问题 * 说明: m个小孩围 坐一起.从第一个小孩从1开始数数.数到n的小孩出局.下一个小孩子从1开始数.问最终小孩出列的顺序.

    功能: 丢手帕 说明: m个小孩围 坐一起.从第一个小孩从1开始数数.数到n的小孩出局.下一个小孩子从1开始数.问最终小孩出列的顺序.

    约瑟夫环(C语言版)

    是一个数学的应用问题:  已知n个人(以编号1,2,3...n分别表示)围坐在一张圆桌周围。从编号为k的人开始报数,数到m的那个人出列;他的下一个人又从1开始报数,数到m... 出局人的顺序为5, 1, 7, 4, 3, 6, 9, 2, 8。

    约瑟夫环问题-循环链表.cpp

    设有n个人围成一圈,现从第s个人开始,拨顺时针方向从1开始报数,数到d的人退出圆圈,然后从退出圆圈的下一个人重新开始报数,数到d的人又退出國圈,依此重复下去,直到最后一个人出圈为止。对于任意给定的n, s和d,...

    猴子选大王的算法 (约瑟夫环)或称循环链表

    有M只猴子,依次按1到M的顺序坐好,然后从第一只猴子开始报数,数到N(N&lt;M)的那只猴子就出局,从下一只猴子开始重新开始数....依次...直到只剩下最后一只猴子,则那只猴子就是大王。 要求:只输入M N值,就可以得到...

    MFC界面 约瑟夫环

    从玩家1开始按顺时针方向自1开始顺序报数,报到M时停止报数,报M的人被淘汰出列,然后从他顺时针方向上的下一个人开始重新报数,如此下去,直到圆圈中只剩下一个人,这个幸存者就是游戏的胜利者。输出游戏中玩家出局...

    数据结构课程设计-约瑟夫环问题用C语言实现(大学生课设作业版)

    第N个人的编号就为N号,现在提供一个数字M,第一个人开始从1报数,第二个人报的数就是2,依次类推,报到M这个数字的人出局,紧接着从出局的这个人的下一个人重新开始从1报数,和上面过程类似,报到M的人出局,直到N...

    约瑟夫问题及C语言实现收藏备用.docx

    在这个问题中,N个人围成一圈,从某个人开始报数,每数到M时,这个人被淘汰出局,然后从被淘汰的人的下一个人开始继续报数,直到所有人都被淘汰,求解最后剩下的人的位置。 在C语言中实现约瑟夫问题,可以使用数组...

    约瑟夫环问题的数组求法

    约瑟夫问题:已知n个人(以编号1,2,3...n分别表示)围坐在一张圆桌周围。从编号为k的人开始报数,数到m的那个人出列;他的下一个人又从1开始报数,数到m的那个人又出列;依此规律重复下去,直到圆桌周围的人全部...

    约瑟夫环问题

    约瑟夫环问题,已知n个人(以编号1,2,3...n分别表示)围坐在一张圆桌周围。从编号为k的人开始报数,数到m的那个人出列;他的下一个人又从1开始报数,数到m的那个人又出列;依此规律重复下去,直到圆桌周围的人全部...

    yuesefuhuan.rar_4 3 2 1

    约瑟夫环 是一个数学的应用问题:  已知n个人(以编号1,2,3...n分别表示)围坐在一张圆桌周围。从编号为k的人开始报数,数到m的那个人出列;他的下一个人又从1开始... 出局人的顺序为5, 1, 7, 4, 3, 6, 9, 2, 8。 

    丢手帕问题java程序

    用java实现的丢手帕问题,即有n个人围成圈,从第k个人开始从1报数,报到第m个人时出局,从出局人的下一个开始从新报数,报到第m个人时出局......如此循环直至最后一人出局

    yuesefuhuan.rar_M?n

    有编号从1到N的N个人坐成一圈报数,报到M的人出局,下一位再从1开始, 如此持续, 直止剩下一位为止,报告此人的编号X。

    猴子选大王设计并编写程序

    为:n只猴子围坐成一个圈,按顺时针方向从1到n编号。然后从1号猴子开始沿顺时针方向从1开始报数,报到m的猴子出局,再从刚出局猴子的下一个位置重新开始报数,如此重复,直至剩下一个猴子,它就是大王。设计并编写...

    拾贝壳游戏--利用数组随机的三人玩游戏

    1.一群小孩子在海边玩耍,发现了一个美丽的贝壳,每个小孩子都希望得到这个贝壳,为了判断出这个贝壳的归属,Simon提出了一个解决方法如下:众人围成一圈,从某个位置开始数数,从1到N,数到N的小孩子出局,其余人继续数数,...

    约瑟夫问题的Python和C++求解方法

    1、N个人围成一个圈,编号从1开始,依次到N。 2、编号为M的游戏参与者开始报数,报数从1开始,后面的人报数接龙,直到K为止,报数为K的人将出局。 3、出局者的下一个玩家接着从1开始报数,如此循环,直到剩下一个...

    Josephus问题.cpp

    教你如何用数据结构的思想来解决Josephus问题 而且是用C来描述的喔

Global site tag (gtag.js) - Google Analytics