• HDU4506+快速求幂


    solve(a,b,c)=a^b%c

    View Code
     1 /*
     2 快速求幂
     3 solve(a,b,c)==a^b%c
     4 */
     5 #include<stdio.h>
     6 #include<string.h>
     7 #include<stdlib.h>
     8 #include<algorithm>
     9 #include<iostream>
    10 #include<queue>
    11 #include<math.h>
    12 using namespace std;
    13 typedef __int64 int64;
    14 const int maxn = 10005;
    15 const int64 mod = 1000000007;
    16 int64 a[ maxn ],b[ maxn ];
    17 int solve( int64 m,int64 n,int64 mod ){
    18     int sum = 1;
    19     while( n>=1 ){
    20         if( n%2==1 ){
    21             sum = sum*m%mod;
    22         }
    23         m = m*m%mod;
    24         n/=2;
    25     }
    26     return sum%mod;
    27 }    
    28 int main(){
    29     int ca;
    30     scanf("%d",&ca);
    31     while( ca-- ){
    32         int n;
    33         int64 t,k;
    34         scanf("%d%I64d%I64d",&n,&t,&k);
    35         for( int i=0;i<n;i++ )
    36             scanf("%I64d",&a[ i ]);
    37         int64 t1,t2;
    38         t1=t/n;
    39         t2=t%n;
    40         int64 tt = solve( k,t,mod );
    41         for( int i=0;i<n;i++ ){
    42             if( t2<= i ) b[ i ] = a[ i-t2 ]*tt%mod;
    43             else b[ i ] = a[ n-( t2-i ) ]*tt%mod;
    44         }
    45         for( int i=0;i<n;i++ )
    46             if( i==0 ) printf("%d",b[ i ]);
    47             else printf(" %d",b[ i ]);
    48         printf("\n");
    49     }
    50     return 0;
    51 }
    keep moving...
  • 相关阅读:
    MySQL不支持的特性
    MySQL查询执行路径
    MySQL索引
    索引的选择性
    MySQL学习笔记_时间,多表更新,数据库元数据
    PowerDesigner 小技巧
    linux下清空文件内容
    mysql跟踪sql
    Navicat For Mysql快捷键
    PHP 配置多站点多目录
  • 原文地址:https://www.cnblogs.com/xxx0624/p/2983188.html
Copyright © 2020-2023  润新知