一队老耗子,每个月都生一对小耗子,小耗子长3个月,第四个月开始变成老耗子开始生, // 假设所有耗子都不死,请问20个月之后共有多少只耗子?

一队老耗子,每个月都生一对小耗子,小耗子长3个月,第四个月开始变成老耗子开始生,
假设所有耗子都不死,请问20个月之后共有多少只耗子?

public class 计算老鼠数量 {
    public static void main(String[] args) {
        // 4.一队老耗子,每个月都生一对小耗子,小耗子长3个月,第四个月开始变成老耗子开始生,
        // 假设所有耗子都不死,请问20个月之后共有多少只耗子?//
        int old = 2; //老耗子数
        int first = 0; //一个月龄
        int second = 0; //两个月龄
        int third = 0; //三个月龄
        int sum = 0; //耗子总数
        for(int i =1 ;i < 25 ; i++){
             old = old + third; //老耗子数=第四个月的耗子+原来的老耗子数
             third = second; //三个月龄耗子数 = 二个月龄的耗子数
             second = first; //二个月龄耗子数 = 一个月龄耗资数
             first = old; //一个月龄耗子数 = 老耗子数
        // System.out.println(old +" "+ third+" " + second+" "+ first);
        }
        System.out.println(old + third + second+ first);
        }
}

 

原文地址:https://www.cnblogs.com/zjulanjian/p/10952782.html