PHP 实现母羊生小羊问题

问题

农场有1只母羊,母羊会在第2年,第4年各生下一只母羊,母羊第5年会死亡,20年后有多少只母羊 ?

PHP实现代码

//定义数组,维护各年龄段的母羊数量
$sheep = array(1,0,0,0,0);
for($i=1;$i<=20;$i++){
    //每年得到新生产的羊(2岁和4岁的羊会生产新的羊)
    $new_sheep = $sheep[1] + $sheep[3];
    //把新生产的小羊数量放到数组开头,表示只有一年
    array_ushift($sheep,$new_sheep);
    //删除超过5年的老羊
    array_pop($new_sheep);
}
//循环结束后得到各个年龄段的母羊数量,相加得到结果
echo array_sum($new_sheep);
本质上是一个出栈入栈的题目