java-报数问题
n个人依次报数,第m个出列,然后从m+1的人重新报数,直到剩下最后一个人,他是几号import java.util.ArrayList;import java.util.List;import java.util.Scanner;/*** Created by yan.yong2 on 2020/1/9.*/public class test {public sta...
·
n个人依次报数,第m个出列,然后从m+1的人重新报数,直到剩下最后一个人,他是几号
import java.util.ArrayList;
import java.util.List;
import java.util.Scanner;
/**
* Created by yan.yong2 on 2020/1/9.
*/
public class test {
public static int inputOut(List list){
Scanner scanner = new Scanner(System.in);
System.out.print("输入人数:");
int n = scanner.nextInt();
System.out.print("移除位置:");
int m = scanner.nextInt();
for(int i=0;i<n;i++){
list.add(i+1);
}
return m;
}
public static void remove(List list, int m){
while(list.size()>1){
for(int i=0;i<m-1;i++){
list.add(list.remove(0));//把不是第m个元素重新添加到尾部
}
list.remove(0);//移除第m个元素,重新报数
}
System.out.print("最后剩下的是:"+list.get(0));
}
public static void main(String[] args){
List list = new ArrayList();
int m = inputOut(list);
remove(list, m);
}
}
昇腾计算产业是基于昇腾系列(HUAWEI Ascend)处理器和基础软件构建的全栈 AI计算基础设施、行业应用及服务,https://devpress.csdn.net/organization/setting/general/146749包括昇腾系列处理器、系列硬件、CANN、AI计算框架、应用使能、开发工具链、管理运维工具、行业应用及服务等全产业链
更多推荐

所有评论(0)