善良的小乌龟

时间: 1ms        内存:128M

描述:

有一天,烟台大学来了一只心地善良又善于感化其他龟的小乌龟,为什么这么说呢,我们从一件事上就可以看出来:他喜欢收养无家可归的小乌龟,并且教导他们。他收养的小乌龟在他的教导下都和他一样心地善良又善于感化其他小乌龟。但是这只小乌龟有个规矩:只有在一个地方生活三年后才会收留其他小乌龟,并且以后每年收养一只。细心的他当然会把这个规矩教给他收养的小乌龟。(这么怪的规矩,看来乌龟的世界很复杂啊)那么问题来了,聪明的你知道N年后小乌龟家一共有多少只乌龟吗?快帮他算算吧。

输入:

输入多组数据,N表示第几年(0<N<=20),当N=0是程序停止。

输出:

输出N年后乌龟的总数

示例输入:

6
10
0

示例输出:

8
55

提示:

参考答案(内存最优[1088]):

#include <cstdio>
int main()
{
   int a[25],n;
   a[0]=1;a[1]=1;
   for(n=2;n<=20;n++)
    a[n]=a[n-1]+a[n-2];
   while(scanf("%d",&n)&&n!=0)
    printf("%d\n",a[n-1]);
    return 0;
}

参考答案(时间最优[0]):

#include<stdio.h>
int Feibonacci(int n){
    if(n==1||n==2)
        return 1;
    else
        return Feibonacci(n-1)+Feibonacci(n-2);
}
int main(){
    int n;
    while(~scanf("%d", &n)&&n!=0){
    printf("%d\n",Feibonacci(n));
    }
    return 0;
}

题目和答案均来自于互联网,仅供参考,如有问题请联系管理员修改或删除。