标签:for 多少 函数 ++ blog ram -- main scanf
2 1 8
1 408
1 #include<stdio.h> 2 long long a[1000003]={0,1,2,0}; 3 long long Pell(long long n) 4 { 5 if(a[n]!=0) return a[n]; 6 else if(n==1||n==2) return n; 7 else 8 { 9 a[n]=((Pell(n-1)%32767)*2+Pell(n-2)%32767)%32767; 10 return a[n]; 11 } 12 } 13 long long Pell2(long long n)//这一个函数的效率没有上面递归的效率好。 14 { 15 long long i; 16 if(a[n]!=0) return a[n]; 17 else if(n==1||n==2) return n; 18 else 19 { 20 for(i=3;i<=n;i++) 21 { 22 a[i]=(a[i-1]%32767*2+a[i-2]%32767)%32767; 23 } 24 return a[n]; 25 } 26 } 27 28 int main(int argc, char *argv[]) 29 { 30 long long T,k; 31 scanf("%lld",&T); 32 while(T>0) 33 { 34 T--; 35 scanf("%lld",&k); 36 printf("%lld\n",Pell2(k)); 37 } 38 return 0; 39 }
标签:for 多少 函数 ++ blog ram -- main scanf
原文地址:http://www.cnblogs.com/huashanqingzhu/p/7290612.html