package cn.LanQiaoBeiAlgorithm.Ravanla;
public class a_n_p {
public static void main(String[] args) {
// a的n次幂对p取模
// 因为a的n次幂是成指数型增长的,很容易超出long型,所以我们需要每次乘后取模
System.out.println(f(3,5000,17));
}
//a = ka*p + a1;
//b = kb*p + b1;
//(a+b)%p--->a%p + b%p (a*b)%p--->(a%p) * (b%p) %p
private static int f(int a, int n, int p) {
int x = 1;
for(int i = 0; i < n; i++) x = (x * a) % p;
return x%p;
}
}
a的n次幂对p取模--Java实现
最新推荐文章于 2023-06-16 12:11:43 发布