递归递推之养兔子

来源:互联网 发布:intel 核显 编程 编辑:程序博客网 时间:2024/05/01 06:37

题目大概:

这个题目感觉和第一题  母牛的故事  好像,这个是一对雌雄兔子一天生一对雌雄兔子,一对小兔子一天后成熟,问n天后会有多少对兔子。

思路:

因为和我前几次发的博客   母牛的故事   类似,就简写思路,很显然,第n天的兔子对数等于前一天的兔子数  加   n-2天的兔子生的小兔子数。于是,递推公式就有了,a[n]=a[n-1]+a[n-2];但需要注意,这个题要求的数比较大,所以要用long int。

感想:

感觉这个题是不是要考察long int,因为思路和第一题一样 啊。这个题的预处理是头脑一热用的,不用应该也问题不大,我没提交试过。

代码:

#include <iostream>using namespace std;int main(){int a;    long int n[91];    n[1]=1;n[2]=2;for(int i=3;i<=90;i++){n[i]=n[i-1]+n[i-2];} while(cin>>a){     if(a==0)break;     cout<<n[a]<<endl;}   return 0;}

0 0