Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1990454
  • 博文数量: 433
  • 博客积分: 918
  • 博客等级: 准尉
  • 技术积分: 3218
  • 用 户 组: 普通用户
  • 注册时间: 2012-02-24 18:21
个人简介

你是不是暗恋我,那就给我发个消息呀,让我知道o(∩∩)o

文章分类

全部博文(433)

分类: PHP

2013-08-16 00:19:34

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

    
    function test($m,$n){    //$n猴子的数量,也是用来编号的,$m踢出猴子要数的数
        $arr=array();
        $arr[1]=1;
        for($x=2;$x<=$n;$x++){    //编号
            $arr[]=$x;
        }
        $i=1;
        while(count($arr)>1){
            foreach($arr as $key=>$val){
                
                if($i%$m==0){    //数到m就踢出
                    unset($arr[$key]);
                }
                $i++;
            }
            
        }
        
        return $arr;
        
    }
    
    $newarr=test(5,200);
    print_r($newarr);
    
?>
阅读(944) | 评论(1) | 转发(0) |
给主人留下些什么吧!~~