import java.util.Scanner;
public class Main {
public static int pow(int x, int n) {
if (x == 1)
return 1;
if (n == 1)
return x;
if(n==0 ) return 1;
else if (n % 2 == 1){
int s = pow(x,n/2);
return (s*s * x);
}
else{
int s = pow(x,n/2);
return (s*s);
}
}
public static void main(String[] args) {
int a, b;
Scanner in = new Scanner(System.in);
while (in.hasNext()) {
a = in.nextInt();
b = in.nextInt();
System.out.println(pow(a, b));
}
}
}
这种方法的复杂度为:lgn
x的n次方(二分法)
最新推荐文章于 2021-08-24 11:47:26 发布