递推递归专题 E 养兔子
2017-03-23 22:16
375 查看
1、简单描述
一开始有一对兔子,一对成熟兔子每天生下一对兔子,幼兔经过一天成熟。求n天兔子的总数。
2,、思路
主要是找出递推公式,兔子的总数=前一天兔子数+新幼兔数,f(n)=f(n-1)+f(n-2),f(n-2)是前两天生下的小兔子长大后产的幼兔。
一开始有一对兔子,一对成熟兔子每天生下一对兔子,幼兔经过一天成熟。求n天兔子的总数。
2,、思路
主要是找出递推公式,兔子的总数=前一天兔子数+新幼兔数,f(n)=f(n-1)+f(n-2),f(n-2)是前两天生下的小兔子长大后产的幼兔。
#include <iostream> using namespace std; int main() { int n; long long int f[100]; while(cin>>n) { if(n==0)break; f[1]=1; f[2]=2; for(int i=3;i<=n;i++) { f[i]=f[i-1]+f[i-2]; } cout<<f[n]<<endl; } return 0; }