0
点赞
收藏
分享

微信扫一扫

斐波那契数列(递归剪枝优化)

卿卿如梦 2022-03-11 阅读 48
c语言

描述

要求输出斐波那契数列第n(1≤n≤64)项。

斐波那契的第i项总是等于它的前面两项之和,约定第一项为0,第二项为1,如下所示:

格式

输入格式
一个正整数n,表示第n项
输出格式
一个正整数,第n项的值

样例

输入样例

输出样例

代码

#include <stdio.h>
#include <stdlib.h>
int a[1007]={0};
int fbn(int n)
{
    if(n==1)
        return 0;
    else if(n==2)
        return 1;
    else{
        if(a[n]!=0)
            return a[n];
        else{
            int sum= fbn(n-1)+fbn(n-2);
            a[n]=sum;
            return sum;
        }

    }

}
int main()
{
    int n;
    scanf("%d",&n);
    printf("%d",fbn(n));
    return 0;
}

举报

相关推荐

0 条评论