标签:
EASY题,快速幂。。。
1 #include <iostream> 2 #include <cstdio> 3 #include <cstring> 4 #include <algorithm> 5 #include <cmath> 6 #define LL __int64 7 using namespace std; 8 const LL MOD=1000000007; 9 10 LL num[10100]; 11 LL ans[10100]; 12 13 LL quick(LL a,LL k){ 14 LL ret=1ll; 15 while(k){ 16 if(k&1) ret=(ret*a)%MOD; 17 k>>=1; 18 a=(a*a)%MOD; 19 } 20 return ret; 21 } 22 23 int main(){ 24 int T,n,t,k; 25 scanf("%d",&T); 26 while(T--){ 27 scanf("%d%d%d",&n,&t,&k); 28 for(int i=0;i<n;i++) 29 scanf("%I64d",&num[i]); 30 for(int i=0;i<n;i++){ 31 ans[(i+t)%n]=(num[i]*quick(k,t))%MOD; 32 } 33 printf("%I64d",ans[0]); 34 for(int i=1;i<n;i++) 35 printf(" %I64d",ans[i]); 36 puts(""); 37 } 38 return 0; 39 }
标签:
原文地址:http://www.cnblogs.com/jie-dcai/p/4353357.html