HDU1063:Exponentiation
大数幂运算问题(注意去除前导0与后导0):
总结:
- 去除后导零使用:.stripTrailingZeros()
- 科学计数法转换为普通表示:.toPlainString()
- 一般使用字符串来接收大数类型,去除前导零可以用String类型的切片方法。
- 去除前导子串零:if (s.startsWith(“0”)) s = s.substring(1);
import java.util.Scanner;
import java.math.BigDecimal;
public class Main {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
while (in.hasNext()) {
BigDecimal a = in.nextBigDecimal();//底数为BigDecimal类型
int b = in.nextInt();//指数int类型
String s = a.pow(b).stripTrailingZeros().toPlainString();
if (s.startsWith("0"))
s = s.substring(1);
System.out.println(s);
}
}
}