蓝桥杯入门训练
问题描述
Fibonacci数列的递推公式为:Fn=Fn-1+Fn-2,其中F1=F2=1。
当n比较大时,Fn也非常大,现在我们想知道,Fn除以10007的余数是多少。
输入格式
输入包含一个整数n。
输出格式
输出一行,包含一个整数,表示F
n除以10007的余数。
#include<stdio.h>
#define m 10007
int main(){
int n,sum=0,temp;
int i;
int a=1,b=1;
scanf("%d",&n);
for(i=1;i<=n;i++){
sum = a%m;
temp = b;
b = (a+b)%m;
a = temp;
}
printf("%d",sum);
}
此题若使用递归会超过(
时间限制:1.0s 内存限制:256.0MB)的要求。