zoukankan      html  css  js  c++  java
  • 有10个人围成一圈,顺序排号。从第一个人开始报数(从1到3报数),凡报到3的人退出圈子,问最后留下的是第几号的人

    有10个人围成一圈,顺序排号。从第一个人开始报数(从1到3报数),凡报到3的人退出圈子,问最后留下的是第几号的人

    只是用一个for完成

    public class Test06 {
    
        public static void main(String[] args) {
            int[] arr={1,2,3,4,5,6,7,8,9,10};
            int counter=0;//用于计算退出的人数
            int j=0;//用于报数
            /*    arr[i%arr.length]可以用来表示数组成环时元素的定位
             *  j用于报数,和成环元素的定位下标无关
             * */
            for(int i=0;counter<arr.length-1;i++){
                if(arr[i%arr.length]!=0){//元素不为0时,表明没有退出
                    if((j+1)%3==0){//报数是3时
                        System.out.println("退出的人是:"+arr[i%arr.length]);
                        arr[i%arr.length]=0;//元素置零表示退出
                        counter++;
                    }
                    j++;//只要没有退出,报数就加1
                    
                }
            }
            for(int i=0;i<arr.length;i++){
                if(arr[i]!=0){
                    System.out.println("最后剩下的人是:"+arr[i]+"号");
                }
            }
        }
    
    }
  • 相关阅读:
    数据结构-串的堆分配存储
    ServerSocket
    Java-坦克大战
    Java-输入输出流
    MyEclipse 快捷键
    数据结构-串的定长顺序存储
    我的软考资料集合
    软考中级软件设计师考试大纲
    2016年第一季度阅读书目
    中国大陆开源镜像网站汇总
  • 原文地址:https://www.cnblogs.com/Unlimited-Rain/p/12427843.html
Copyright © 2011-2022 走看看