题解 | #统计每个月兔子的总数#

统计每个月兔子的总数

http://www.nowcoder.com/practice/1221ec77125d4370833fd3ad5ba72395

import java.util.Scanner;

/**
 * @author hll[yellowdradra@foxmail.com]
 * @description 有一只兔子,从出生后第3个月起每个月都生一只兔子,
 小兔子长到第三个月后每个月又生一只兔子,假如兔子都不死,问每个月的兔子总数为多少?
 * @date 2021-05-25 23:52
 **/
public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        while(sc.hasNext()){
            int n = sc.nextInt();
            // 状态转移数组
            int[] dp = new int[n];
            // 第一个月 第二个月 都是小兔子 数量为1
            dp[0] = 1;
            dp[1] = 1;
            // 从第三个月开始 当前月的兔子数等于之前两个月兔子数之和
            // dp[i - 1]是还没有生产的的和过产期的兔子数
            // dp[i - 2]是待产的兔子数
            for (int i = 2; i < dp.length; i++) {
                dp[i] = dp[i - 1] + dp[i - 2];
            }
            System.out.println(dp[dp.length - 1]);
        }
    }
}
全部评论

相关推荐

尊尼获获:闺蜜在哪?
点赞 评论 收藏
分享
点赞 收藏 评论
分享
牛客网
牛客企业服务