搜索
写经验 领红包
 > 知识

猴子选大王php(猴子选大王问题编程)

导语:PHPer面试高分助力题:猴子选大王问题

猴子选大王 php(猴子选大王问题编程)

编程题,题目如下:

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

function beKing($m,$n) { //先构建数组 for ($i=0;$i<$n;$i++) { $arr[] = $i; } $i = 0; //当数组仅剩一个元素的时候退出循环 while ( count($arr) > 1) { //判断猴子是否出局 //出局直接删除,不出局则将猴子放到最后 if ( ($i+1) % $m == 0 ) { unset($arr[$i]); } else { array_push($arr, $arr[$i]); unset($arr[$i]); } $i++; } return $arr;}

测试:

$a = beKing(2,4);print_r($a);exit;

本文内容由快快网络小曲创作整理编辑!