第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

php面試題

php面試題

一只名叫tom的貓 2018-07-04 10:13:02
一道PHP面試題,感覺自己寫的不是很優(yōu)雅,想看看大家怎么寫的小羊能活5歲,它在2歲,4歲的時候都會生一只小羊,5歲的時候就死亡了。問:現(xiàn)在有一只剛出生的小羊(0歲),n年后有多少只羊?
查看完整描述

3 回答

?
喵喔喔

TA貢獻1735條經(jīng)驗 獲得超5個贊

$plus = [2,4];//新羊出生

$die = 5;//舊羊死亡


$n = 50;


$sheeps = [];

$sheeps[1] = 0;

for($i = 1; $i <= $n; $i++)

{

    foreach($sheeps as $index => $value)

    {

        $sheeps[$index]++;

        if($sheeps[$index] == $die)

        {

            unset($sheeps[$index]);

            continue;

        }

        if(in_array($sheeps[$index],$plus))

        {

            $sheeps[] = 0;

        }

    }

}

echo(count($sheeps));//n=50,242786


查看完整回答
反對 回復 2018-07-10
?
森欄

TA貢獻1810條經(jīng)驗 獲得超5個贊

第一種:

function born($n){

    $all=[0];

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

      $c=count($all);

      for($j=0;$j<$c;$j++){

          $all[$j]=$age=$all[$j]+1;

          if($age==2||$age==4){

            $all[]=0;

          }

      }

    }

    return $all;

}

//返回的數(shù)據(jù)中,把大于等于5的去掉就是了。

第二種:

function sheep($n){

    $y=[

        0=>1,

        1=>0,

        2=>0,

        3=>0,

        4=>0,

        5=>0,

    ];

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

        for($j=5;$j>0;$j--){

            $y[$j]=$y[$j-1];

        }

        $born=$y[2]+$y[4];

        $y[0]=$born;

    }

    return $y;

}

//unset($y[5]) 再把各項加起來就可以了。

兩種方法得到的結果是一樣的,但第一種方法不斷往數(shù)組里添加剛出生的羊,數(shù)組長度越來越大,我測試了一下,大于 50 的時候就會出現(xiàn)內(nèi)存不足的情況了。
而第二種方法則完全不必擔憂。


查看完整回答
反對 回復 2018-07-10
  • 3 回答
  • 0 關注
  • 576 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網(wǎng)微信公眾號