本文主要是介绍POJ Exponentiation+Java在ACM中的运用,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
题目链接:Clicke Here~
java解决大数就是爽阿!~
以前大数模板敲啊敲的,敲了半天发现一交果断wrong。只从学会了java妈妈在不用担心我遇到大数了/
这道题遇到的Java函数有:
stripTrailingZeros() 去掉后缀0(但是注意0.0000的情况,是不会去除后缀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 checkedString startstr1 = "www";String startstr2 = "http://";// checks that string starts with given substringboolean retval1 = str.startsWith(startstr1);boolean retval2 = str.startsWith(startstr2);// prints true if the string starts with given substringSystem.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); //去掉前缀0System.out.println(ans);}}
}
这篇关于POJ Exponentiation+Java在ACM中的运用的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!