个人博客
www.tothefor.com
蓝桥杯复习知识点汇总
目录
快速幂
public static int mod=100003;
public static long quick_pow(long x,long y) {
long s=1;
while(y>0)
{
if((y&1)==1) s=(s*x)%mod;
y>>=1;
x=(x*x)%mod;
}
return s;
}
public static void main(String[] args) throws Exception {
long n = nextLong();
long m = nextLong();
// 加mod再取余mod是防止前面的相减为负数。因为原本的含义是前面的一定大于后面的,在分别取余后就可能造成前面的小于后面的,如101和99分别对100取余。
System.out.println((quick_pow(n,m)-n*quick_pow(n-1,m-1)%mod+mod)%mod);
closeAll();
}