快速幂模板
说明
求 x p m o d m x^p\mod m xpmodm的值。
输入格式
三个不超过 10000 的正整数 x,p,m。
输出格式
x p m o d m x^p \mod m xpmodm 的值。
样例
输入数据 1
2 10 100
输出数据 1
24
提示
noip2017普及组初赛
简单的模板题
模板代码
#include<bits/stdc++.h>
using namespace std;
#define int long long
int a,n,mod;
int read(){
int ans=0,f=1;
char ch=getchar();
while(!isdigit(ch)){
f*=(ch=='-')?-1:1;
ch=getchar();
}
while(isdigit(ch)){
ans=ans*10+ch-'0';
ch=getchar();
}
return ans*f;
}
int fastPow(int a,int n){
int ans=1;
a%=mod;
while(n){
if(n&1)ans=ans*a%mod;
a=a*a%mod;
n>>=1;
}
return ans;
}
signed main(){
a=read(),n=read(),mod=read();
printf("%lld",fastPow(a,n));
return 0;
}