您的位置:首页 > 其它

POJ 1001 Exponentiation

2014-01-13 16:31 274 查看
最裸的高精度幂,记录一下Java里面高精度类的用法而已

import java.io.*;
import java.util.Scanner;
import java.math.*;

public class Main
{
public static void main(String[] args)
{
Scanner cin = new Scanner(System.in);
while(cin.hasNext()) {
int m;
String sn;
sn = cin.next();
m = cin.nextInt();
BigDecimal n = new BigDecimal(sn);
String ans = n.pow(m).toPlainString();
if(ans.charAt(0) != '0') System.out.print(ans.charAt(0));
int len = ans.length();
while(ans.charAt(len - 1) == '0') len--;
if(ans.charAt(len - 1) == '.') len--;
for(int i = 1;i < len;i++) System.out.print(ans.charAt(i));
if(len == 1 && ans.charAt(0) == '0') System.out.print('0');
System.out.print('\n');
}
}
}


其中BigDecimal类的toPlainString方法可以将浮点数转化成精确形式的字符串而不是科学计数法表示
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: