biginteger^biginteger
public static BigInteger pow(BigInteger base, BigInteger exponent)
{
public static BigInteger pow(BigInteger base, BigInteger exponent)
{
BigInteger result = BigInteger.ONE;
while (exponent.signum() > 0) {
if (exponent.testBit(0)) result = result.multiply(base);
while (exponent.signum() > 0) {
if (exponent.testBit(0)) result = result.multiply(base);
base = base.multiply(base);
exponent = exponent.shiftRight(1);
}
exponent = exponent.shiftRight(1);
}
return result;
}