zoukankan      html  css  js  c++  java
  • 兔子繁殖问题(斐波拉契)

    题目:如果1对兔子每月能生1对小兔子,而每对小兔在它出生后的第3个月就可以生1对小兔子,如果从1对初生的小兔子开始,1年后能繁殖多少兔子?

    思路:其实这个问题我们可以将兔子划分为"1月大的兔子","2月大的兔子","3月大的兔子"。 ① 初始时: 一对1月大小兔子,总数为1对。 ② 第一个月: 1月大的小兔子变成2月大的兔子,总数还是1对。 ③ 第二个月: 2月大的小兔子变成3月大的兔子,繁殖了一对小兔子,总数为2对。 ④ 第三个月: 3月大的兔子tmd有生了一对小兔子,上个月1月大的小兔子变成了2月大的兔子,总数为3对。 ...... ...... F0=1 F1=1 F2=F0+F1 F3=F1+F2 ...... Fn=Fn-2+Fn-1

    C++ 实现

    #include<iostream>
    #include<iomanip>
    using namespace std;
    int main(){
        int month[12];
        month[0] = 1;
        month[1] = 1;
        for(int i=2;i<12;i++){
            month[i] = month[i-1] + month[i-2];
        }
        for(int i=0;i<12;i++){
            cout<<"在第"<<i<<"个月兔子有"<<setw(4)<<month[i]<<setw(4)<<"只"<<endl;
        }
        return 0;
    }
    

    运行结果

    在第0个月兔子有    1  只
    在第1个月兔子有    1  只
    在第2个月兔子有    2  只
    在第3个月兔子有    3  只
    在第4个月兔子有    5  只
    在第5个月兔子有    8  只
    在第6个月兔子有   13  只
    在第7个月兔子有   21  只
    在第8个月兔子有   34  只
    在第9个月兔子有   55  只
    在第10个月兔子有  89  只
    在第11个月兔子有 144  只
    
  • 相关阅读:
    WPF多线程问题
    SQL 使用经验
    [转]express 路由控制--next
    [转]浅谈Web缓存
    [转]一份优秀的前端开发工程师简历是怎么样的?
    http
    [转]HTTP详解(1)-工作原理
    [转]使用Flexible实现手淘H5页面的终端适配
    [转]理解$watch ,$apply 和 $digest --- 理解数据绑定过程
    GMT时间
  • 原文地址:https://www.cnblogs.com/hgnulb/p/8961755.html
Copyright © 2011-2022 走看看