题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4506
题目大意;找规律,判断k的t次幂前面的系数。
1 #include <iostream> 2 #include <cstdio> 3 using namespace std; 4 5 __int64 fun(__int64 a,__int64 b) 6 { 7 __int64 s=1; 8 while (b) 9 { 10 if (b%2==1) 11 s=s*a%1000000007; 12 a=a*a%1000000007; 13 b>>=1; 14 } 15 return s%1000000007; 16 } 17 18 int main () 19 { 20 int T; 21 __int64 a[10100]; 22 scanf("%d",&T); 23 while (T--) 24 { 25 __int64 n,t,k; 26 scanf("%I64d%I64d%I64d",&n,&t,&k); 27 k=fun(k,t); 28 for (int i=0; i<n; i++) 29 { 30 scanf("%I64d",&a[i]); 31 a[i]=a[i]*k%1000000007; 32 } 33 t%=n; 34 printf("%I64d",a[(n+0-t)%n]); 35 for(int i=1; i<n; i++) 36 printf(" %I64d",a[(n+i-t)%n]); 37 printf (" "); 38 } 39 return 0; 40 }