有n个人围成一圈,顺序排号。从第一个人开始报数(从1到3报数),凡报到3的人退出圈子,问最后留下的是原来第几号的那位,人数自行输入

package com.dzqc.Day0126;

import java.util.Scanner;

/**
 * Created with IntelliJ IDEA.
 *
 * @Author: zhangxiaokun
 * @Date: 2022/01/26/13:21
 * @Description:
 * 有n个人围成一圈,顺序排号。从第一个人开始报数(从1到3报数),凡报到3的人退出圈子,问最后留下的是原来第几号的那位。
 * 人数自行输入
 */
public class Zuoye {

    public static void main(String[] args) {

        Scanner scan=new Scanner(System.in);
        int n=scan.nextInt();
        int count=n,j=1,countnum=0;;
        int[] arr=new int[n+1];
        for(int i=1;i<=n;i++) {
            arr[i]=1;
        }
        while(count>1) {
            if(arr[j]!=0) {
                countnum++;
                if(countnum==3) {
                    count--;
                    arr[j]=0;
                    countnum=0;
                }
            }
            j++;
            if(j==n+1) {
                j=1;
            }

        }
        for(int i=1;i<=n;i++) {
            if(arr[i]!=0)
                System.out.print("i:"+i);
        }

    }


}

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
禁止转载,如需转载请通过简信或评论联系作者。

推荐阅读更多精彩内容