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

简介: 根据高德纳(Donald Ervin Knuth)的《计算机程序设计艺术》(The Art of Computer Programming),1150年印度数学家Gopala和金月在研究箱子包装物件长宽刚好为1和2的可行方法数目时,首先描述这个数列。

根据高德纳(Donald Ervin Knuth)的《计算机程序设计艺术》(The Art of Computer Programming),1150年印度数学家Gopala和金月在研究箱子包装物件长宽刚好为1和2的可行方法数目时,首先描述这个数列。在西方,最先研究这个数列的人是比萨的列奥那多(意大利人斐波那契Leonardo Fibonacci),他描述兔子生长的数目时用上了这数列。

第一个月初有一对刚诞生的兔子
第二个月之后(第三个月初)它们可以生育
每月每对可生育的兔子会诞生下一对新兔子
兔子永不死去.

这里写图片描述

wiki : 斐波那契数列

public class Rabbit {
    public static void main(String [] args){
        long [] m ;
        System.out.print("Please input month : ");
        Scanner s = new Scanner(System.in);
        int i = s.nextInt();
        m = new long[i];

        if(m.length >= 1){
            m[0] = m[1] = 1;//第一和第二个月的兔子都是:1
        }
        for(int j = 0; j < m.length; j++){
            if(j == 0 || j == 1){
                System.out.println("Month : " + (j+1) + "\tRabbit number is : " + m[j]);
            }else {
                m[j] = m[j-2] + m[j-1];//第三个月以后都满足规律:m[j] = m[j-2] + m[j-1]
                System.out.println("Month : " + (j+1) + "\tRabbit number is : " + m[j]);
            }
        }
    }

}

运行测试:

Please input month : 6
Month : 1   Rabbit number is : 1
Month : 2   Rabbit number is : 1
Month : 3   Rabbit number is : 2
Month : 4   Rabbit number is : 3
Month : 5   Rabbit number is : 5
Month : 6   Rabbit number is : 8
目录
相关文章
|
Unix 索引
生信教程 | 基于PSMC估计有效群体大小
生信教程 | 基于PSMC估计有效群体大小
|
机器学习/深度学习 人工智能 自然语言处理
🔬技术宅必看!AI Prompt深度解析,商业数据分析的科学魔法
【8月更文挑战第1天】在快速发展的科技领域中, AI Prompt 正革新商业数据分析方式。它通过自然语言指令, 驱动 AI 模型实现数据洞察。本文探讨 AI Prompt 的定义、原理及其在商业分析中的应用。**最佳实践包括**: 精准设计 Prompt 以确保清晰具体的指令; 结合领域知识优化 Prompt, 提升分析准确性; 采用迭代法, 根据反馈持续改进模型性能。掌握 AI Prompt 技术, 不仅提高效率, 更能洞察商机, 创造价值。
619 0
|
人工智能 数据安全/隐私保护
图灵测试
图灵测试 “【5月更文挑战第20天】”
2319 1
|
存储 边缘计算 物联网
边缘计算的类型及应用概述
边缘计算将计算与存储推向网络边缘,提升响应速度,降低带宽需求。它涵盖边缘设备、边缘数据中心、边缘云及边缘服务器型计算,应用于智能家居、物联网、工业自动化和智能医疗等领域,实现低延迟、高效能与数据安全。随着技术发展,边缘计算在数字化转型中扮演关键角色。
|
JavaScript 前端开发 安全
JavaScript实现跳转的方法
JavaScript实现跳转的方法
|
算法 Python Windows
Python实现文件压缩和解压功能
Python实现文件压缩和解压功能
302 0
|
数据采集 机器学习/深度学习 数据挖掘
Python 中的数据清洗和预处理
在数据分析和机器学习中,数据清洗和预处理是非常重要的步骤。数据清洗是指对原始数据进行清理、去重、缺失值处理等操作,以提高数据质量。数据预处理是指对清洗后的数据进行转换、标准化、特征选择等操作,以使数据适合后续的分析和模型训练。在 Python 中,有许多库可以用于数据清洗和预处理,其中最常用的是`pandas`和`numpy`。
|
机器学习/深度学习 并行计算 Go
探索Go语言在机器学习领域的应用局限与前景
探索Go语言在机器学习领域的应用局限与前景
284 1
|
数据采集 搜索推荐 安全
谷歌最快多久能收录我的网站?
答案是:最快是24小时内。 为什么谷歌的收录时间很重要 在网站建设和优化过程中,站长们都非常关心自己的站点何时能被谷歌搜索引擎收录。 这主要是因为,被谷歌收录意味着您的网站内容可以出现在用户的搜索结果中,从而带来流量和潜在的转化机会。 影响谷歌收录时间的因素 站点质量 谷歌对于网站的质量要求颇高。 拥有高质量原创内容、良好的用户体验和高速的加载速度的网站更容易受到搜索引擎的欢迎,并且可能被更快地收录。
403 0
谷歌最快多久能收录我的网站?