公式:an = 2^(n-1) * ( 1 + 2^(n-1))
我试着推导,结果...下面是我推的部分,后面无力了
先由母函数得出那条多项式相乘,再用泰勒公式化简,第2个多项式构造那个函数思路:
因为没有奇数次方,所以f(x)的k次导数在x=0处时分两种情况,如果k为偶数,f(x)的k次导数在x=0处应为1,跟左边多项式一样,当k为奇数时要为0,如何为0?既然有了e^x,那么可以考虑e^(-x),求导的和就是0了
②式可以化为完全平方式,不过没啥意义
④式似乎可以累加,但那是无用功,因为累加求和是求和,本来就是通过和Sn求出an的。
就到这里,之后....
#include<stdio.h>
int pow_mod(int a,int b,int c){
int res = 1;
a = a%c;
while(b){
if(b&1)
res = (res * a) % c;
a = a *a % c;
b>>=1;
}
return res;
}
int main()
{
#ifndef ONLINE_JUDGE
freopen("in.txt","r",stdin);
#endif
int n,res,test;
scanf("%d",&test);
while(test--){
scanf("%d",&n);
res = pow_mod(2,n-1,10007);
res = res * (res+1);
printf("%d\n",res%10007);
}
return 0;
}