法一:

function monkeyKing($n,$m)

{

$arr=range(1,$n);

$i=0;

while (count($arr)>1)

{

for($i=1;$i<=$m-1;$i++)

{

array_push($arr, array_shift($arr));

}

array_shift($arr);

}

echo "$arr[0]";

}

monkeyKing(6,4);//5

法二:

function king($m ,$n)

{

//构造数组

$arr=range(1,$m);

$i = 0 ; //设置数组指针

while(count($arr)>1)

{

//遍历数组,判断当前猴子是否为出局序号,如果是则出局,否则放到数组最后

if(($i+1)%$n ==0) {

unset($arr[$i]) ;

} else {

array_push($arr ,$arr[$i]) ; //本轮非出局猴子放数组尾部

unset($arr[$i]) ; //删除

}

$i++ ;

}

return $arr ;

}

var_dump(king(6,4));

法三://此法不是很理解 希望大家留下自己的见解

function yuesefu($n,$m) {

$r=0;

for($i=2; $i<=$n; $i++) {

$r=($r+$m)%$i;

}

return $r+1;

}

print_r(yuesefu(3,3));//2

以上就介绍了php猴子选大王,包括了方面的内容,希望对PHP教程有兴趣的朋友有所帮助。

本文原创发布php中文网,转载请注明出处,感谢您的尊重!

php 猴子选大王,php猴子选大王相关推荐

  1. 猴子选大王 java_猴子选大王

    猴子选大王 M只猴子要选大王,选举办法如下:所有猴子按1,2--n编号围成一圈,从第一号开始顺序报数1,2--m,凡是报m号的退出圈外,如此循环报数直到圈内只剩一只猴子时这只猴子就是大王. 数据结构: ...

  2. python猴子选大王_“猴子选大王” 算法 python实现

    今天来实现一个约瑟夫环算法,下面是一道新浪的面试题: m只猴子围坐成一个圈,按顺时针方向从1到m编号.然后从1号猴子开始沿顺时针方向从1开始报数,报到n的猴子出局,再从刚出局猴子的下一个位置重新开始报 ...

  3. php面试 猴子大王,php猴子选大王问题解决方法,猴子大王_PHP教程

    php猴子选大王问题解决方法,猴子大王 本文实例讲述了php猴子选大王问题解决方法.分享给大家供大家参考.具体分析如下: 问题描述: 一群猴子排成一圈,按1,2,...,n依次编号.然后从第1只开始数 ...

  4. 猴子选大王 java_猴子选大王(java求解) | 学步园

    n只猴子选大王,方法如下:按照1,2,3....n给猴子编号,然后按编号顺序坐成1圈,从1号猴子开始按编号顺序报数至m,报到m的猴子退出圈外,退出的猴子的下一只猴子重新从1开始报数至m,报到m的猴子退 ...

  5. python猴子选大王_sicily 猴子选大王

    题目描述 猴子选大王,有N只猴子,从1-N进行编号.它们按照编号的顺时针方向,排成一个圆圈,然后从第一只猴子开始报数.第一只猴子报1,以后每只猴子报的数字都是它前面猴子所报数字加1.如果一只猴子报的数 ...

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

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

  7. 猴子选大王 java,猴子选大王 java中 linkedlist实现

    n只猴子围坐成一个圈,按顺时针方向从1到n编号.然后从1号猴子开始沿顺时针方向从1开始报数,报到m的猴子出局,再从刚出局猴子的下一个位置重新开始报数,如此重复,直至剩下一个猴子,它就是大王.设计并编写 ...

  8. c语言猴子选大王注释,猴子选大王问题(C语言实现)

    题目大概是这样的: n只猴子(n不超过50)围成一个圈.从某一只开始依次给猴子们编号,从1到n.然后从第一只猴子开始,从1开始依次报数,报到m的猴子离开圈子.从这只离开的猴子的下一只开始再从1开始报数 ...

  9. python猴子选大王_python-猴子选大王问题

    一群猴子要选新猴王.新猴王的选择方法是:让N只候选猴子围成一圈,从某位置起顺序编号为1~N号.从第1号开始报数,每轮从1报到3,凡报到3的猴子即退出圈子, 接着又从紧邻的下一只猴子开始同样的报数.如此 ...

最新文章

  1. python画动图-利用Python如何制作好玩的GIF动图详解
  2. 软件需求分层处理的多种常见方式
  3. vs 没有足够的内存继续执行程序_科赋内存条:韩国和台湾产的有不同?
  4. 2015年第六届蓝桥杯 - 省赛 - C/C++大学A组 - A. 方程整数解
  5. python九九乘法表右对齐_python语法练习题之九九乘法表
  6. ubuntu清空回收站
  7. 网关 Apache APISIX 在 360 基础运维平台项目中的实践
  8. 隐藏元素 mayaa
  9. Android SurfaceView双缓存
  10. java代码生成Excel文件3000条自定义属性的的域账户名
  11. VDN互联网数据驱动 FOR PB
  12. 全网最全计算机二级C语言知识总结,还不快来白嫖
  13. RL257-ASEMI整流二极管RL257
  14. 2.C++-选择排序、冒泡排序、插入排序、希尔排序、归并排序、快速排序
  15. @Android程序员今年必看!!拖更了三年带回了一个抖音,虎牙,哔哩哔哩都在用的库|墙裂推荐
  16. 流形学习(二) Isomap 在 MATLAB 中的实现及实例
  17. java中最基本的数据类型,java中的基本数据类型
  18. 快速实现大文件传输你了解多少?
  19. 遗传算法(GA)的原理简介与应用【python实现】
  20. mysql表格查询方法

热门文章

  1. mysql断电同步不起作用_mysql主从同步因断电产生的不能同步问题
  2. IntelliJ IDEA 修改单行注释的格式
  3. 如何在 MacOS 环境下搭建 SVN 服务端环境
  4. 华为服务器芯片总在pc,服务器芯片 华为
  5. python制作系统程序与html交互_python+html语音人物交互_flask后台与前端(html)交互的两种方法...
  6. 【开源项目】向Nginx-RTMP服务器推流
  7. 2008r2配置 iis mysql php_Windows 2008 R2服务器配置文档iis+php+mysql
  8. 九九乘法表代码口述_利用随机函数实现座次表的随机排座
  9. setcellvalue 格式_POI对Excel单元格的格式的设置参数
  10. java程会释放锁join_关于join() 是否会释放锁的一些思考