[POJ 1001] Exponentiation JAVA 解题报告
求高精度幂
Time Limit: 500MSMemory Limit: 10000K
Description
对数值很大、精度很高的数进行高精度计算是一类十分常见的问题。比如,对国债进行计算就是属于这类问题。
现在要你解决的问题是:对一个实数R( 0.0 < R < 99.999 ),要求写程序精确计算 R 的 n 次方(Rn),其中n 是整数并且 0 < n <= 25。
Input
T输入包括多组 R 和 n。 R 的值占第 1 到第 6 列,n 的值占第 8 和第 9 列。
Output
对于每组输入,要求输出一行,该行包含精确的 R 的 n 次方。输出需要去掉前导的 0 后不要的 0 。如果输出是整数,不要输出小数点。
Sample Input
Sample Output
解决思路
这是一道高精度的题,用C,C++解题会比较累,因为语言本身没有处理高精度数据的类或者库函数。但是java的BigDecimal就像一把利刃,特别适合用来处理高精度的题目,代码可以写得特别精简。
下面贴代码:
版权声明: 本文为 InfoQ 作者【一直AC一直爽】的原创文章。
原文链接:【http://xie.infoq.cn/article/3881b5ab955853caf0619ec59】。文章转载请联系作者。
评论