算法基础--母牛生育问题

问题:有一母牛,到4岁可生育,每年一头,所生均是一样的母牛,到15岁绝育,不再能生,20岁死亡,问n年后有多少头牛
上代码

<?php
function cow($y){
    static $num= 1;//定义静态变量;初始化牛的数量为1
    for ($i=1; $i <=$y ; $i++) {
    if($i>=4 && $i<15){//每年递增来算,4岁开始+1,15岁不能生育
        $num++;
        cow($y-$i);//递归方法计算小牛$num,小牛生长年数为$y-$i
    }else if($i==20){
     $num--;//20岁死亡减一
    }
    return $num;
}

总结,依然是利用递归,核心在于,第一 用静态变量保存牛的总量,计算一头母牛一生能生多少小牛,递归到每一个小牛即可

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 本文主要作为自己的学习笔记,并不具备过多的指导意义。 暴力递归 把问题转化为规模缩小了的同类问题的子问题 有明确的...
    kirito_song阅读 3,681评论 2 59
  • 让老板觉得你值得加薪30%。那你的加薪还难吗? 今天的选题真好,到年底啦,让我们提早想一下,怎么样跟老板去提加薪。...
    若娴儿马阅读 235评论 0 0
  • 所谓距离,指事物在空间或时间上相隔,也比喻两者间的差距。 心理学有个名词叫界限意识,强调人与人或物都是互相独立存在...
    _德成阅读 462评论 0 4
  • 第一部分是上传 先在本地合适的位置创建一个新的文件夹,叫repo 进入文件夹,右键选择Git bash here ...
    zl1995阅读 1,163评论 0 0
  • 在导入ndk项目时一直报错,检查CMakeLists.txt文件和build.gradle文件的路径配置均正常,但...
    ccodle阅读 2,586评论 0 0

友情链接更多精彩内容