猴子选大王

来源:互联网 发布:淘宝客交流群 编辑:程序博客网 时间:2024/06/02 14:50
m只猴子围坐成一个圈,按顺时针方向从1到n编号。然后从1号猴子开始沿顺时针方向从1开始报数,报到n的猴子出局,再从刚出局猴子的下一个位置重新开始报数,如此重复,直至剩下一个猴子,它就是大王。设计并编写程序,实现如下功能:(1)要求由用户输入开始时的猴子数n、报数的最后一个数m。(2)给出当选猴王的初始编号。function find($m, $n) {$arr = range(1, $m);$i   = 1;while (count($arr) > 1) {if ($i % $n == 0) {// 提出猴子unset($arr[$i-1]);} else {array_push($arr, $arr[$i-1]);//不是m的挪到数组末尾,循环unset($arr[$i-1]);}$i++;}return array_pop($arr);}

原创粉丝点击