题目描述
给出正整数n,求斐波那契数列第n项模1e9+7的值。
输入格式
一行一个正整数n
输出格式
一行一个正整数,为斐波那契数列第n项模1e9+7的值。
样例数据
输入1
1
输出1
1
输入2
3
输出2
2
输入3
100000
输出3
911435502
数据规模与约定
对于50%的数据,1≤n≤100000。
#include<bits/stdc++.h>
using namespace std;
long long mod=1e9+7,n,fib[100010];
long long f(int n){
if(n<=2)return 1;
if(fib[n])return fib[n];
long long res=(f(n-1)+f(n-2))%mod;
return fib[n]=res;
}
int main(){
cin>>n;
cout<<f(n);
}