<?php
/*
*一群猴子排成一圈,按1,2,...,n依次編號。然后從第1只開始數(shù),數(shù)到第m只,把它踢出圈,
*從它后面再開始數(shù),再數(shù)到第m只,在把它踢出去...,如此不停的進行下去,
*直到最后只剩下一只猴子為止,那只猴子就叫做大王。要求編程模擬此過程。
*作者:hyc
*/
$arr = array(A,B,C,D,E,F,G); //猴子數(shù)組
function tiHouZi($arr,$num){
if($num<=1) echo '數(shù)字錯誤!'; //判斷數(shù)的數(shù)是否為0以上的.
$lenght = count($arr);
if($lenght<=1) echo '數(shù)組錯誤!'; //判斷數(shù)組是否符合要求:長度大于1個.
$i = 1;
while($lenght > 1){
if($i == $num){//到了M只猴子后,進行踢猴子操作
$ar = each($arr);
unset($arr[$ar[key]]);
prev($arr);
$i = 0;
}
if(next($arr) == false)reset($arr);//如果數(shù)組到了盡頭,則從置數(shù)組
$i++;
$lenght = count($arr);
}
return $arr;
}
print_r(tiHouZi($arr,3));
?>
如對本文有疑問,請?zhí)峤坏浇涣髡搲?,廣大熱心網(wǎng)友會為你解答?。?點擊進入論壇