题目:费波那契数列的递推公式:Fn=Fn-1+Fn-2,其中F1=F2=1;当n比较大时,Fn也比较大,现在我么想知道Fn除以10007的余数是多少。
C++:
#include<iostream>
using namespace std;
const int N=1000001;
int main(){
int F[N];
F[1]=F[2]=1;
for(int i=3;i<1000000;i++){
int n;
cin>>n;
cout<<F[n];
return 0;
}
}
Java:
package UKingW;
import java.util.Scanner;
public class Begin4 {
public static void main(String[] args) {
int[]f=new int[1000001];
f[1]=f[2]=1;
for(int i=3;i<=1000000;i++){
f[i]=(f[i-1]+f[i-2])%10007;
}
Scanner in=new Scanner(System.in);
System.out.println(f[in.nextInt()]);
in.close();
}
}