蓝桥杯 入门训练 Fibonacci数列

来源:互联网 发布:学生电脑必备软件 编辑:程序博客网 时间:2024/05/24 06:28

这里写图片描述

//第一个程序,运行超时#include<stdio.h>int Fibonacci(int n){    return (n==1||n==2)?1:Fibonacci(n-1)+Fibonacci(n-2);}int main(){    int n;    scanf("%d",&n);    printf("%d\n",Fibonacci(n)%10007);    return 0;}//正确代码#include<stdio.h>#define MOD 10007 //定义除数 int main(){    //数组定义大一点,防止数组越界     //定义动态数组太大,DEV—C++没法编译通过,可以先用较小的值运行,提交的时候再改回来     int n,i,Fibonacci[1000001];    while(scanf("%d",&n)!=EOF)    {        Fibonacci[1]=Fibonacci[2]=1;        for(i=3;i<=n;i++)            Fibonacci[i]=(Fibonacci[i-1]+Fibonacci[i-2])%MOD;        printf("%d\n",Fibonacci[n]);    }    return 0;}
2 0
原创粉丝点击