题目描述
输入b,p,k的值,求b^p mod k的值。其中b,p,k*k为长整型数。
输入输出格式
输入格式:
三个整数b,p,k.
输出格式:
输出“b^p mod k=s”
s为运算结果
输入输出样例
输入样例#1:
2 10 9
输出样例#1:
2^10 mod 9=7
import java.io.FileOutputStream;
import java.io.IOException;
import java.math.BigInteger;
import java.util.*;
public class Main
{
static int a[];
public static long powerMod(long b,long p,long k) {
long ans=1;
b=b%k;
while(p>0) {
if(p%2==1)
ans=(ans*b)%k;
p/=2;
b=(b*b)%k;
}
return ans;
}
public static void main(String[] args) throws IOException{
Scanner sc=new Scanner(System.in);
long b=sc.nextLong();
long p=sc.nextLong();
long k=sc.nextLong();
long s=powerMod(b,p,k);
System.out.println(b+"^"+p+" mod "+k+"="+s);
}
}