zoukankan      html  css  js  c++  java
  • 猴子选大王

    public static void main(String[] args) {
    /*写有n个人围成一圈,顺序排号,从第一个人开始报数(从1~3报数),
    * 凡报到3的人退出圈子,问最后留下的人原来排在第几号。
    */
    int n = 8;//一共有8个人
    boolean[] arr = new boolean[n];
    for (int i = 0; i < n; i++) {
    arr[i] = true;//设置所有的数为true
    }
    int leftcount = n;//剩下的数
    int index = 0;// 递增,显示所有数据
    int countNum = 0;// 1--3循环
    while (leftcount > 1) {
    if (arr[index] == true) {
    countNum++;
    if (countNum == 3) {//判断是3的倍数
    countNum = 0;
    arr[index] = false;
    leftcount--;//当为false时,剩下的数-1;
    }
    }
    index++;
    if (index == n) {
    index = 0;//一次循环结束,开始下一次筛选
    }
    }
    for (int i = 0; i < n; i++) {
    if (arr[i] == true) {
    System.out.println("最后留下的人原来排在第" + (i + 1) + "号");
    }
    }
    }

  • 相关阅读:
    Java-判断一个数是不是素数
    Sublime快捷键
    python
    全排列
    python
    python
    OpenCV 实现图像结构相似度算法 (SSIM 算法)
    C++
    C++
    NFA 转 DFA
  • 原文地址:https://www.cnblogs.com/sunda847882651/p/9478074.html
Copyright © 2011-2022 走看看