zoukankan      html  css  js  c++  java
  • 一个面试题

    一群猴子排成一圈,按1,2,...,n依次编号。然后从第1只开始数,数到第m只,把它踢出圈,从它后面再开始数,再数到第m只,在把它踢出去...,如此不停的进行下去,直到最后只剩下一只猴子为止,那只猴子就叫做大王。要求编程模拟此过程,输入m、n, 输出最后那个大王的编号:

     1 $m = 13;
     2 $n = 20;
     3 $j = 0;
     4 $monkey = array();
     5 for($i = 0; $i < $n; $i++) //给猴子编号,下标从零开始
     6 {
     7     $monkey[$i] = $i;
     8 }
     9 
    10 echo getking($monkey,$m);
    11 
    12 function getking($arr,$m) //一个递归程序
    
    13 {
    14     $arr = array_values($arr);
    15     
    16     if(count($arr) == 1)
    17     {
    18         return $arr[0];
    19     }
    20     else
    21     {
    22         if(count($arr) >= $m)
    23         {
    24             unset($arr[$m-1]);
    25         }
    26         else
    27         {
    28             unset($arr[($m%count($arr))-1]);
    29         }
    30         return getking($arr,$m);
    31     }
    32 }
  • 相关阅读:
    什么是评审
    缺陷识别与缺陷跟踪
    白盒测试用例设计
    黑盒测试用例设计(二)
    黑盒测试用例设计技术
    Mysql基础
    JS函数
    SpringBoot整合JPA
    Python中的保留字
    操作系统的发展史
  • 原文地址:https://www.cnblogs.com/lrxing/p/3600566.html
Copyright © 2011-2022 走看看