题目链接:Clicke Here~
java解决大数就是爽阿!~
以前大数模板敲啊敲的,敲了半天发现一交果断wrong。只从学会了java妈妈在不用担心我遇到大数了/
这道题遇到的Java函数有:
stripTrailingZeros() 去掉后缀0
toPlainString() 返回大数的非科学计数法
startsWith()
startsWith()函数介绍及扩展:
描述
startsWith(),endsWith()的作用,用法,判断字符串a 是不是以字符串b开头或结尾
java.lang.String.startsWith(String prefix) 如果此字符串的方法测试用指定的前缀开始.
声明
以下是声明java.lang.String.startsWith()方法
public boolean startsWith(String prefix)
参数
prefix -- 这是值的前缀.
返回值
如果此方法返回true参数表示的字符序列是该字符串所表示的字符序列的前缀,否则返回false.
异常
NA
实例:
import java.lang.*; public class StringDemo { public static void main(String[] args) { String str = "www.yiibai.com"; System.out.println(str); // the start string to be checked String startstr1 = "www"; String startstr2 = "http://"; // checks that string starts with given substring boolean retval1 = str.startsWith(startstr1); boolean retval2 = str.startsWith(startstr2); // prints true if the string starts with given substring System.out.println("starts with " + startstr1 + " ? " + retval1); System.out.println("starts with " + startstr2 + " ? " + retval2); } }
参考资料:Java String.startsWith()方法
import java.math.*; import java.util.*; class Main{ public static void main(String args[]){ Scanner cin = new Scanner(System.in); while(cin.hasNext()){ BigDecimal R,res; int n; R = cin.nextBigDecimal(); n = cin.nextInt(); res = R.pow(n); String ans; ans = res.stripTrailingZeros().toPlainString(); //去掉前缀0, 将大数结果转换成非科学计数法的形式 if(ans.startsWith("0.")) //判断前缀是否为0.形式 ans = ans.substring(1); //去掉前缀0 System.out.println(ans); } } }
POJ Exponentiation(大浮点数JAVA轻松解决),布布扣,bubuko.com
时间: 2024-10-17 18:55:03