zoukankan      html  css  js  c++  java
  • 递归和动态规划——母牛

    母牛每年生一只母牛, 新出生的母牛成长三年后也能每年生一只母牛, 假设不会死。 求N年后, 母牛的数量。

    解:

    母牛的数量
    * 1 2 3 4 5 6 7
    * 1 2 3 4 6 9 13
    * 因为小牛是三年之后就可以繁育,而且牛不会死掉,所以当年的牛都可以保留到下一年
    * 所以第i年的牛的数量 = 第i - 1 年的牛的数量(牛不会死) + 第 i - 3年的牛的数量(这一年的牛现在都可以繁育)

    public class Cow {
    
        public static int cowNum(int n){
            if(n < 1) return 0;
            if(n == 1 || n == 2 || n == 3) return n;
            else{
                return cowNum(n - 1) + cowNum(n - 3);
            }
        }
    
        public static void main(String[] args){
            System.out.println(cowNum( 7 ));
        }
    }
    

      

    如果每只母牛只能活10年, 求N年后, 母牛的数量。

  • 相关阅读:
    随机生成300道四则运算
    练习
    电梯演说模板练习
    敏捷开发
    团队模式
    思考
    build to win 观后感
    四则运算
    Code review
    Mutual review
  • 原文地址:https://www.cnblogs.com/SkyeAngel/p/8965821.html
Copyright © 2011-2022 走看看