Friday, June 12, 2015

UVa 713 - Adding Reversed Numbers

// UVa 713 - Adding Reversed Numbers

import java.math.BigInteger;
import java.util.Scanner;

public class Main {

	public static BigInteger reverse(BigInteger m) {
		BigInteger ten = BigInteger.TEN;
		BigInteger n = BigInteger.ZERO;
		while (m.compareTo(BigInteger.ZERO) > 0) {
			BigInteger[] o = m.divideAndRemainder(ten);
			n = n.multiply(ten).add(o[1]);
			m = o[0];
		}
		return n;
	}

	public static void main(String[] args) {
		Scanner scan = new Scanner(System.in);
		for (int cases = scan.nextInt(); cases > 0; cases--) {
			BigInteger a, b, c, x, y, z;
			a = scan.nextBigInteger();
			b = scan.nextBigInteger();
			x = reverse(a);
			y = reverse(b);
			z = x.add(y);
			c = reverse(z);
			System.out.println(c);
		}
	}

}

No comments:

Post a Comment