UVa 713 : Adding Reversed Numbers
問題リンク:Adding Reversed Numbers
問題概要:
2つのとても大きい値が与えられる
それらを反転した値を加え、その結果を反転して出力せよ
先頭の0は消えることに注意
解法:
BigIntegerを使って計算する
StringBufferのreverse()を使って文字列を反転する
コード:
import java.io.*; import java.util.*; import java.math.*; class Main { public static void main(String args[]) { Scanner in = new Scanner(System.in); int N = in.nextInt(); while(N-- > 0) { StringBuffer a = new StringBuffer(in.next()).reverse(); StringBuffer b = new StringBuffer(in.next()).reverse(); BigInteger A = new BigInteger(a.toString()); BigInteger B = new BigInteger(b.toString()); A = A.add(B); StringBuffer ans = new StringBuffer(A.toString()); BigInteger print = new BigInteger(ans.reverse().toString()); System.out.println(print.toString()); } } }