题目描述
输入描述:
三个用空格隔开的整数a,b和p。
输出描述:
一个整数,表示a^b mod p的值。
示例1
输入
2 3 9
输出
8
解题思路:主要用到快速幂的知识。
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner=new Scanner(System.in);
long a=scanner.nextLong();
long b=scanner.nextLong();
long p=scanner.nextLong();
System.out.println(get(a,b,p));
}
public static long get(long a,long b,long p){
long res=a;
long ans=1;
while(b>0){
if((b&1)==1)ans=ans*res%p;
res=res*res%p;
b=b>>>1;
}
return ans%p;
}
}