美文网首页
2019-11-25

2019-11-25

作者: 老鸟的巢 | 来源:发表于2019-11-25 17:44 被阅读0次

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

function king($m, $n) {

    $monkeys = range(1, $n);

    $i = 0;

    while (count($monkeys) > 1) {

        if(($i + 1) % $m != 0) {
            array_push($monkeys, $monkeys[$i]);
        }

        unset($monkeys[$i]);

        $i++;
    }

    return $monkeys;
}
  1. 有一母牛,到4岁可生育,每年一头,所生均是一样的母牛,到15岁绝育,不再能生,20岁死亡,问n年后有多少头牛。
function cow_number($cows, $years) {

    for($i = 0; $i < $years; $i++) {

        echo "this is the $i TH , \n";
        foreach ($cows as $k=>$c) {

            if($c >= 20) {
                unset($cows[$k]);
            } else {

                if($c >= 4 && $c < 15) {
                    array_push($cows, 0);
                }

                $cows[$k]++;
            }
        }
    }

    return count($cows);
}

$cows = [1];
echo cow_number($cows, 30);

相关文章

网友评论

      本文标题:2019-11-25

      本文链接:https://www.haomeiwen.com/subject/wlmjwctx.html