报数游戏n个人排一圈报数报到特定数字的人出列求出列顺序

绝世美人儿
618次浏览
2021年01月01日 04:23
最佳经验
本文由作者推荐

长裙英文-林冲风雪山神庙

2021年1月1日发(作者:边贡)


package test5_4;


import
import r;


**
* 〈一句话功能简述〉

* 〈功能详细描述〉
*
* @author db2admin
* @see [相关类方法](可选)
* @since [产品模块版本] (可选)设有n个人依围成一圈,从第1个人开始报数,
* 数到第m个人出列,然后从出列的下一个人开始报数,数到第m个人又出列,…,
* 如此反复到所有的人全部出列为止。设n个人的编号分别为1,2,…,n,打印出出列
的顺序
*
public class NumGame {


public static void main(String[] args) {
int n =new Scanner().nextInt();
int m=new Scanner().nextInt();
queue(n, m);
}

**
* 最后出队的人
*
* @param total 总的人数
* @param num 第几号出队
*

public static void queue(int total, int num) {
定义一个数组,true表示没有出队列的,false表示已经出队列的
boolean[] arr = new boolean[total];
(arr, true);


int next = 1; 移动变量

int index = 0; 数组下标


int count = total; 剩下的人数

如果剩下的人数为1人时,停止报数
while (count > 1) {
if (arr[index] == true) {
if (next == num) {
arr[index] = false;
剩下的人数减1
--count;
移动变量复位,从1开始报数
next = 1;

n(依次出列的人为:
} else {
++next;
}
}
index = (index + 1) % total;报到结束从头开始
}
for (int i = 0; i < total; i++) {
if (arr[i] == true) {
n(最后出列的人为:
}
}
}
}

----------------- -------------------------------------------------- -------------------------------
package test5_4;

import

**
* @author db2admin
*
*
public class Test1 {
**
* @param args
*

public static void main(String[] args) {
for each 有几个就循环几次


int[] arr ={ 1, 3, 5, 7 };
for (int i : arr) {
n(i);
if (i == 3) {
break;
}
}
n(15.25%(-0.5));
n((-15.25)%0.5);
n((-15.25)%(-0.5));
n((-11.5));
n(15.2%0.5);false

}

public static void numgame(int total,int m)
{

int next=1;报数
int count=total;人数
int index=0;下标
boolean a[]=new boolean[total];
(a, true);
while(count>1)
{
if(a[index]==true)
{
if (next==m) {
a[index]=false;
next=1;
--count;
n(依次出列的是

}
}else {
++index;
}index=(index+1)%total;
}
for(int i=0;i {
if(a[i]==true)
{
n(最后出来的是
}





}
}

}

爱5-优质文明服务


学声乐-盘古开天地的神话故事


黄山学院是几本-邀请信英语作文模板


万事顺遂是什么意思-元旦的黑板报


回家的心情-最喜小儿无赖


广告文案案例-东北风俗


孤芳自赏近义词-八公忠犬


郑宇成电视剧-走读