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年后, 母牛的数量。

  • 相关阅读:
    day 48
    40 协程 多路复用
    JQuery
    JS DOMBOM
    psotgres、timescaledb
    crontab命令
    Go语言结构体和方法
    Go语言锁的使用
    Go语言map数据结构
    ZOJ 3777 Problem Arrangement
  • 原文地址:https://www.cnblogs.com/SkyeAngel/p/8965821.html
Copyright © 2011-2022 走看看