E

来源:互联网 发布:php soap添加header 编辑:程序博客网 时间:2024/04/25 12:33

Description

一对成熟的兔子每天能且只能产下一对小兔子,每次都生一公一母,每只小兔子的成熟期是1天,小兔子出生后隔一天才能再生小兔子。第一天某人领养了一对成熟的兔子,一公一母,请问第N天以后,他将会得到多少对兔子。

Input

测试数据包括多组,每组一行,为整数n(1≤n≤90)。输入以0结束。

Output

对应输出第n天有几对兔子(假设没有兔子死亡现象,而且是一夫一妻制)。

Sample Input

120

Sample Output

12

Hint

数据类型可以用64位整数:long long


#include<iostream>using namespace std;int main(){   long long a[91]={1,1},n,i;   for(i=2;i<=90;i++)   {a[i]=a[i-1]+a[i-2];}   while(cin>>n&&n)   cout<<a[n]<<endl;}
很容易得出第i天的兔子数为第i-1天兔子的数加繁殖数,繁殖数为i-2天的兔子数。
故有公式a[i]=a[i-1]+a[i-2]。
0 0
原创粉丝点击