兔子繁殖問題

問題描述:

一對兔子,從出生後第3個月起每個月都生一對兔子。小兔子長到第3個月後每個月又生一對兔子。假如兔子都不死,請問第1個月出生的一對兔子,第n個月有多少隻兔子?
分析:第一個月  一對兔子
          第二個月  一對兔子
          第三個月  上個月的一對兔子+第一個月兔子新出生的一對兔子=2對兔子
          ...........
        第n個月F(n)= 上個月(n-1月)的兔子數F(n-1)+上上個月(n-2月)新出生的兔子這個月又生出的兔子數F(n-2)         
代碼部分:

#include <iostream>

using namespace std;

int main()
{
    int n,preNum = 1,temp,curNum = 1;
    cin >> n;
    for(int i = 3; i <= n; i ++){
        temp = curNum;
        curNum = curNum + preNum;
        preNum = temp;
    }
    cout<<curNum<<endl;
    return 0;
}

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章