zoukankan      html  css  js  c++  java
  • php实现 统计每个月兔子的数量

    php实现 统计每个月兔子的数量

    一、总结

    一句话总结:想清楚再动,怎么可能出错嘛。

    二、统计每个月兔子的数量

    题目描述

    有一只兔子,从出生后第3个月起每个月都生一只兔子,小兔子长到第三个月后每个月又生一只兔子,假如兔子都不死,问每个月的兔子总数为多少?

        /**
         * 统计出兔子总数。
         * 
         * @param monthCount 第几个月
         * @return 兔子总数
         */
        public static int getTotalCount(int monthCount)
        {
            return 0;
        }

    输入描述:

    输入int型表示month

    输出描述:

    输出兔子总数int型

    示例1

    输入

    复制
    9

    输出

    复制
    34

    代码:

     1 <?php
     2 //1 2 3 4
     3 //1 1 2 3
     4 //每个月的兔子数量为f(n),兔子数量为本月成熟的兔子+本月新出生的兔子
     5 //本月成熟的兔子为两个月前的所有兔子
     6 //本月新出生的兔子,为
     7 //每个月的兔子有三种:可以下崽崽的兔子,不可以下崽崽的兔子,和刚出生的兔子   题中是兔子过两个月成熟
     8 //刚出生的兔子:等于两个月前的所有兔子
     9 //不可以下崽的兔子:等于前一个月新生兔子--等于前三个月的所有兔子
    10 //可以下崽崽的兔子:等于刚出生的兔子--等于两个月前的所有兔子
    11 //f(n)=2f(n-2)+f(n-3)
    12 
    13 while($n=trim(fgets(STDIN))){
    14     $arr=array_fill(0,100,-1);
    15     $arr[0]=0;$arr[1]=1;$arr[2]=1;
    16     echo f($n).PHP_EOL;
    17 }
    18 function f($n){
    19     global $arr;
    20     if($arr[$n]!=-1) return $arr[$n];
    21     else return $arr[$n]=2*f($n-2)+f($n-3);
    22     //if($n==1||$n==2) return 1;
    23     //else return 2*f($n-2)+f($n-3);
    24 }
    25 ?>
     
  • 相关阅读:
    ANSYS文件读写
    ANSYS导出图片
    由面网格拉伸为体网格
    ANSYS由结点生成单元
    photoshop做gif图片的问题
    matlab输出没有白边的图片
    关于ANSYS绘图显示结果范围的问题
    ansys的建模基于的坐标系问题
    ANSYS分析轴对称问题
    ANSYS取消坐标轴显示,关闭局部坐标系
  • 原文地址:https://www.cnblogs.com/Renyi-Fan/p/9238084.html
Copyright © 2011-2022 走看看