php实现约瑟夫环问题

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

//$n为总人数,$m为每m个人就踢掉一个
<?php
function get_king($n, $m){
    $arr = range(1, $n);
    $i = 0;
    while(count($arr) > 1){
        $i++;
        $curr = array_shift($arr);
        if($i%$m !=0){
            array_push($arr, $curr);
        }
    }
    return $arr[0];
}

$res = get_king(5,3);
var_dump($res);

运行结果为:

D:\Program Files (x86)\360\skylar6\php>php 3.php
int(4)
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 最近转载一些面试题,希望能给找工作的朋友们带来一点帮助。 1.写出5个以上你所知道的常用的Linux命令和它的功能...
    程序员祝融阅读 5,548评论 0 61
  • 前段时间忙着备考,一直没来更贴,还有就是保险迟迟没有审定,现在这两件事都已尘埃落定,所以过来交待一下,一是给关注保...
    陶心暖暖阅读 2,738评论 0 5
  • 王立群说过,人要成功,需要四个行:你要行、有人说你行、说你行的人要行、身体要行。 这四个条件,缺一不可! 我记得这...
    博贝阅读 2,744评论 0 0
  • 爱哭的我 从未改变就像每一个炎热的夏天 心中的我 从未长大期待不变的幸福 岁岁年年
    一枚荔枝阅读 1,310评论 2 2

友情链接更多精彩内容