题目描述
斐波那契数列是指这样的数列:数列的第一个和第二个数都为11,接下来每个数都等于前面22个数之和。给出一个正整数�a,要求斐波那契数列中第�a个数对10001000取模的结果是多少。
输入格式
第1行是测试数据的组数n,后面跟着n行输入。每组测试数据占11行,包括一个正整数a(1≤a≤1000000)。
输出格式
n行,每行输出对应一个输入。输出应是一个正整数,为斐波那契数列中第a个数对10001000取模得到的结果。
输入样例
4
5
2
19
1
输出样例
5
1
181
1
#include<bits/stdc++.h>
using namespace std;
int cxk,CXK;
int JNTM(int NGM){
if(NGM==1) return 1;
if(NGM==2) return 1;
return JNTM(NGM-1)+JNTM(NGM-2);
}
int main(){
scanf("%d",&cxk);
while(cxk--&&~scanf("%d",&CXK)){
printf("%d\n",JNTM(CXK)%1000);//题目说要对结果模1000
}
return 0;
}