首页 > 其他 > 详细

约瑟夫环问题

时间:2014-11-28 06:12:06      阅读:311      评论:0      收藏:0      [点我收藏+]
<?php
//约瑟夫环,选猴王
function pickKing($num, $m) {
$arr = array();
$a = ‘1‘;
for ($i=0; $i<$num; $i++) {
$arr[] = $a++; //赋值区
}
$i = 1;
while (count($arr) > 1) {
if ($i % $m != 0) {
$arr[] = $arr[$i-1]; //判断区
//print_r($arr);
}
unset($arr[$i-1]);
$i++;
}

return $arr;
}

echo ‘<pre>‘;
$arr = pickKing(3, 3);
print_r($arr);
echo ‘</pre>‘;

 
//选猴王2.
function yuesefu($n,$m){
$r = 0;
for($i=2;$i<=$n;$i++){
$r = ($r+$m)%$i;
}
return $r+1;
}
print_r(yuesefu(3,3));
?>

 

约瑟夫环问题

原文:http://www.cnblogs.com/Xavier13/p/4127595.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!