题解 | #牛牛学数列5#

牛牛学数列5

https://ac.nowcoder.com/acm/problem/22160

打表

Generator:

#include<stdio.h>
int f[47]={0,1,1,2,3,5};
int main(){
	printf("f[47]={0,1,1,2,3,5,");
    for(int i=6;i<=45;i++) f[i]=f[i-1]+f[i-2],printf("%d,",f[i]);
    printf("%d};",f[45]+f[44]);
}

Output:

f[47]={0,1,1,2,3,5,8,13,21,34,55,89,144,233,377,610,987,1597,2584,4181,6765,10946,17711,28657,46368,75025,121393,196418,317811,514229,832040,1346269,2178309,3524578,5702887,9227465,14930352,24157817,39088169,63245986,102334155,165580141,267914296,433494437,701408733,1134903170,1836311903};

Answer:

#include<stdio.h>
int n,f[47]={0,1,1,2,3,5,8,13,21,34,55,89,144,233,377,610,987,1597,2584,4181,6765,10946,17711,28657,46368,75025,121393,196418,317811,514229,832040,1346269,2178309,3524578,5702887,9227465,14930352,24157817,39088169,63245986,102334155,165580141,267914296,433494437,701408733,1134903170,1836311903};
int main(){
  scanf("%d",&n);
  printf("%d",f[n]);
}

一般递推

#include<stdio.h>
int n,f[47]={0,1,1,2,3,5};
int main(){
    scanf("%d",&n);
    for(int i=6;i<=n;i++) f[i]=f[i-1]+f[i-2];
    printf("%d",f[n]);
}
题解 文章被收录于专栏

https://ayx.moefox.tech/

全部评论

相关推荐

评论
1
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务