22-兔子生兔子问题
生活随笔
收集整理的這篇文章主要介紹了
22-兔子生兔子问题
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
題目
假設(shè)一對兔子的成熟期是一個月,即一個月可長成成兔,那么,如果每對成兔每個月都生一對小兔,一對新生的小兔從第二個月起就開始生兔子,試問從一對兔子開始繁殖,以后每個月會有多少對兔子?
思路
斐波那契數(shù)列模型
本題考點:動態(tài)規(guī)劃
狀態(tài)表示:
f[i]表示在i月的時候有多少對兔子(包括成熟的不成熟的)
狀態(tài)計算:
f[i] = f[i - 1] + f[i - 2]; f[i - 1]表示i-1個月兔子對的數(shù)量,f[i - 2]表示i-2個月兔子對的數(shù)量;
因為第i-2月的兔子對數(shù)量到這月已經(jīng)成為成熟兔子對,并且每個成熟的兔子對都可以生出一對小兔
代碼
#include <stdio.h> #include <string.h>#define N 100 long long int f[N];int main() {memset(f, 0, sizeof(f));f[0] = 1;f[1] = 1;f[2] = 2;int i = 0;for (i = 3; i < N; i++) {f[i] = f[i - 1] + f[i - 2];}for (i = 0; i < N; i++) {printf("%d's month: %lld\n", i, f[i]);}return 0; }總結(jié)
以上是生活随笔為你收集整理的22-兔子生兔子问题的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 新建gitlab分支
- 下一篇: json解析格式化工具