《算法竞赛进阶指南》 1 (P4) a^b 快速幂

快速幂

 1 #include
 2 #include
 3 #include
 4 using namespace std;
 5 long long a,b,p;
 6 long long read(){
 7     long long w=0,f=1;char c;c=getchar();
 8     while(c>'9'||c<'0'){if(c=='-') f=-1;c=getchar();}
 9     while(c>='0'&&c<='9'){w=w*10+c-'0';c=getchar();}
10     return w*f;
11 }
12 long long ksm(long long t,long long tt){
13     long long ans=1,k=t,kk=tt;
14     while(kk>0){
15         if(kk&1) ans=ans*k%p;
16         k=k*k%p;kk>>=1;
17     }
18     ans%=p;
19     return ans;
20 }
21 int main(){
22     a=read();b=read();p=read();
23     cout<endl;
24     return 0;
25 }

 

你可能感兴趣的:(《算法竞赛进阶指南》 1 (P4) a^b 快速幂)