建设好学校网站,建立网站 用英语,北辰网站建设公司太原网站制作,建站网站如何清理缓存任务描述#xff1a;
有n个人围成一个圆圈分别编号1~n,从第1个到m循环报数#xff0c;凡是报到m者离开#xff0c;求n个 人离开圆圈的次序。 任务要求#xff1a; 代码示例#xff1a;
package M0317_0331;import java.util.ArrayList;
import java.util.List;
import j…任务描述
有n个人围成一个圆圈分别编号1~n,从第1个到m循环报数凡是报到m者离开求n个 人离开圆圈的次序。 任务要求 代码示例
package M0317_0331;import java.util.ArrayList;
import java.util.List;
import java.util.Scanner;public class m240326 {public static void main(String[] args) {Scanner scanner new Scanner(System.in);System.out.print(请输入数值n, m: );int n scanner.nextInt();int m scanner.nextInt();ListInteger result josephus(n, m);System.out.println(输出结果示例);for (Integer integer : result) {System.out.print(integer );}}public static ListInteger josephus(int n, int m) {ListInteger result new ArrayList(); // 用于存放结果的列表ListInteger list new ArrayList(); // 用于存放初始元素的列表// 初始化列表添加1到n的元素for (int i 1; i n; i) {list.add(i);}int index 0; // 当前操作的索引// 循环删除元素直到列表为空while (!list.isEmpty()) {// 计算下一个要删除的元素的索引index (index m - 1) % list.size();// 删除该元素并将其添加到结果列表中result.add(list.remove(index));}return result;}}