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

<?php

//$n猴子个数 $m第几个位置

function fn( $n, $m)
{

  //将猴子数量放到数组内
  for($i = 1; $i < $n+1; $i++){
    $arr[] = $i;
  }
  $i = 0;
  var_dump($i);

  //当数组内只剩下一个值跳出数组
  while(count($arr) > 1){
    echo $i."\n";
    if(($i + 1) % $m == 0){

      //当循环次数满足m值 去除掉当前值
      unset($arr[$i]);
    }else{

      //不满足循环次数 放到数组对尾
      array_push($arr, $arr[$i]);

      //删除掉当前循环内容
      unset($arr[$i]);
    }
    $i ++;
  }
  return $arr;
}

var_dump(fn(15,7));

转载于:https://www.cnblogs.com/donizzh/p/4585314.html

一群猴子排成一圈,按1,2,...,n依次编号。然后从第1只开始数,数到第m只,把它踢出圈...相关推荐

  1. php 猴子选大王,PHP猴子选大王,最优解决算法:一群猴子排成一圈,按1,2,…,n依次编号。然后从第1只开始数... - 简书...

    我们采用闭包自调用的方式,很轻松的解决了这个问题,无需循环,代码美观可读性强 1.我在桌面创建了一个php文件,实现过程如下: function monkey(int $m,int $n){ $arr ...

  2. 猴子排圈求最后编号问题

    转载链接:http://www.cnblogs.com/mztest/archive/2013/01/30/2882829.html 一群猴子排成一圈,按1,2,...,n依次编号.然后从第1只开始数 ...

  3. 出圈问题(java)-----n个人围成一圈,数到key或者key的倍数,出圈,问剩下的最后一个人原来的位置是多少?

    出圈问题---n个人围成一圈,数到key或者key的倍数,出圈,问剩下的最后一个人原来的位置是多少? java版 1.n个人围成一圈,说明它是重复循环的,头就是尾. 2.每次数key或者key的倍数, ...

  4. c语言出圈问题数学算法,出圈问题

    首先理解题意 设有n个人围坐一圈并按顺时针方向从1到n编号. 从第s个人开始进行1到m的报数, 报数到第m个人, 此人出圈, 再从他的下一个人重新开始1到m的报数,如此进行下去直到所有的人都出圈为止. ...

  5. 公链还能这样玩?二次元、出圈与社区自治

    来源 | 碳链价值 责编 | 晋兆雨 头图 | CSDN 付费下载自视觉中国 你没见过这样的公链. 他们不仅有着硬核的技术团队背景,自带光环的明星机构投资,还有在头部媒体面前毫不逊色的市场宣传.甚至, ...

  6. 烤仔的朋友们丨公链还能这样玩?二次元、出圈与社区自治

    本期好友:碳链价值 作者:碳14,编译:黑土. 凭借另类的IP打造方式,任务式的工作量证明,以及对年轻人的高度重视,Conflux的社区呈现出了与其他公链完全不同的特征:「大家在社区里花了很多时间,一 ...

  7. C语言约瑟夫报数出圈算法,c语言实现约瑟夫环问题

    (一)基本问题 1.问题描述 设有编号为1,2,-,n的n(n>0)个人围成一个圈,每个人持有一个密码m.从第一个人开始报数,报到m时停止报数,报m的人出圈,再从他的下一个人起重新报数,报到m ...

  8. 有n个人围坐一圈并按顺时针方向从1到n编号,从第s个人开始进行1到m的报数,报数到第m个人,此人出圈,再从他下一个人重新开始1到m的报数,如此下去直到全部都出圈为止。现要求按出圈次序.给出n人的顺序表

    设有n个人围坐一圈并按顺时针方向从1到n编号,从第s个人开始进行1到m的报数,报数到第m个人,此人出圈,再从他的下一个人重新开始1到m的报数,如此进行下去直到所有的人都出圈为止.现要求按出圈次序,每1 ...

  9. c语言出圈问题10人,第38套题:c语言出圈问题分析.doc

    第38套题:c语言出圈问题分析.doc 下载提示(请认真阅读)1.请仔细阅读文档,确保文档完整性,对于不预览.不比对内容而直接下载带来的问题本站不予受理. 2.下载的文档,不会出现我们的网址水印. 3 ...

最新文章

  1. Struts1.x的使用
  2. Java未被捕获的异常
  3. 系统架构师笔记(1)
  4. linux添加x权限,Linux 7 的 rc.local 文件需要 添加 +x 权限才会自动执行
  5. 信息学奥赛一本通(C++)在线评测系统——基础(一)C++语言—— 1056:点和正方形的关系
  6. win10用一会就蓝屏重启_电脑出现蓝屏?教你如何解决
  7. Spring Boot,@ EnableWebMvc和常见用例
  8. vue里实现同步执行方法_vue中的watch方法 实时同步存储数据
  9. sqllyog可以连接oracle_03-SQLServer中链接服务器用法--连接Oracle
  10. Java 数据结构之双链表
  11. 达内java考试_达内第一次JAVA考试题
  12. 电阻和电容式触摸屏区别
  13. axios 上传文件 封装_axios 封装上传文件的请求方法
  14. 第十章 隐马尔可夫模型
  15. 计算机可移动磁盘无法显示图片,移动硬盘不显示盘符原因及解决方法步骤介绍【图文详解】...
  16. Handler到底是一个什么东东
  17. 银行卡号码显示每隔4位数空一格
  18. 关于在安卓M上无法申请 SYSTEM_ALERT_WINDOW 权限的解决方案
  19. Terramaster铁威马 F4-422真机实测预告 3000元级万兆4盘位NAS
  20. bzoj3123【SDOI2013】森林

热门文章

  1. java折半查找(正常的折半查找)
  2. poj 2151 Check the difficulty of problems
  3. 如何用DELPHI实现把WORD、EXCEL和图片等存储到数据库中
  4. Asp.net(C#)常用函数表--新手必备
  5. 查询某一个表的字段和数据类型
  6. python hbase 报错by_【hbase】使用thrift with python 访问HBase
  7. 中油即时通信电脑版_联想超智能电脑横空出世 电脑适应人已成现实
  8. 小魂和他的数列(dp+树状数组优化)
  9. 还是贪心(结构体排序)
  10. 云原生编程挑战赛--Serverless创新应用赛邀您提交方案啦!