Luogu P1226 取余运算||快速幂_快速幂

超短代码

#include<iostream>
#include<cstdio>
using namespace std;
long long b,p,k;
long long Pow(long long n,long long m,long long k){//快速幂啊
	if(m==1)return n%k;
	else {long long r=Pow(n,m>>1,k);return (r*r%k)*(m%2?(n%k):1)%k;}//表达式
}
int main(){
	scanf("%lld%lld%lld",&b,&p,&k);
	printf("%lld^%lld mod %lld=%lld",b,p,k,Pow(b,p,k));
	return 0;
} 
原文地址:https://www.cnblogs.com/ezoihy/p/8899448.html