zoukankan      html  css  js  c++  java
  • PHP编程----猴子选大王

    <?php
    /**
    * 猴子选大王
    * 17个猴子围成一圈,从某个开始报数1-2-3-1-2-3-……报“3”的猴子就被淘汰,
    * 游戏一直进行到圈内只剩一只猴子它就是猴大王了
    *
    * 编程思路
    * 如果猴子被淘汰则unset() 否则array_push() 不停循环 直至数组中只有一个元素
    *
    * 假如5个猴子 每报一个数 数组的值
    *
    * 初始数组
    * Array ( [0] => 1 [1] => 2 [2] => 3 [3] => 4 [4] => 5 )
    * 开始报数
    * Array ( [1] => 2 [2] => 3 [3] => 4 [4] => 5 [5] => 1 )
    * Array ( [2] => 3 [3] => 4 [4] => 5 [5] => 1 [6] => 2 )
    * Array ( [4] => 5 [5] => 1 [6] => 2 [7] => 4 )
    * Array ( [5] => 1 [6] => 2 [7] => 4 [8] => 5 )
    * Array ( [7] => 4 [8] => 5 [9] => 2 )
    * Array ( [8] => 5 [9] => 2 [10] => 4 )
    * Array ( [10] => 4 [11] => 2 )
    * Array ( [11] => 2 [12] => 4 )
    * Array ( [12] => 4 )
    */
    function king($m, $n){
      for($i = 1; $i < $m+1; $i++){
        $arr[] = $i;
      }
      $i = 0;
      print_r($arr);echo '<br>';
      while(count($arr) > 1){
        if(($i + 1) % $n == 0){
          unset($arr[$i]);
        }else{
          array_push($arr, $arr[$i]);
          unset($arr[$i]);
          print_r($arr);echo '<br>';
        }
        $i++;
      }
      print_r($arr);
    }

    king(5, 3);

  • 相关阅读:
    HRBUST 1377 金明的预算方案
    51Nod 2649 完全背包
    计蒜客 T2129 采药
    计蒜客 T1408 矩形嵌套
    OpenJudge 2711 合唱队形
    51Nod 2080 最长上升子序列
    2021NUAA暑假集训 Day5 部分题解
    2021NUAA暑假集训 Day4 部分题解
    C++ 11 move constructor 何时调用?
    老外这样说英文
  • 原文地址:https://www.cnblogs.com/catcrazy/p/6250345.html
Copyright © 2011-2022 走看看