有一种动物,它出生后两天后就开始以每天一只得速度繁殖,假设有一天,有一只这样的动物(该动物刚出生,从第三天开始繁殖后代),到第11天,共有多少只?
有一个非常明智的思考,思考过程如下:
我们思考第N天的兔子是如何来的,首先第N-1天的兔子都会存活到第N天,并且不会繁殖
第N-2天的兔子都会在第N天繁殖,所以我们可以得到一个递推公式:
(假设第N天的兔子为F(N))
F(N) = F(N-1) + F(N-2) ;
得到这个递推公示后,我们就可以写代码了。
#include <iostream>
using namespace std;
int fact(int n){
if(n==1 || n==2){
return 1;
}