713 – Adding Reversed Numbers

package BasicFeatures;

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.math.BigInteger;

public class AddingReversedNumbers {
	public static void main(String[] args) throws IOException {
		BufferedReader buf = new BufferedReader(
				new InputStreamReader(System.in));
		int nCases = Integer.parseInt(buf.readLine());
		for (int i = 0; i < nCases; i++) {
			String line = buf.readLine();
			String[] s = line.split(" ");
			s[0] = reverse(s[0]);
			s[1] = reverse(s[1]);
			s[0] = omit(s[0]);
			s[1] = omit(s[1]);
			BigInteger b = new BigInteger(s[0]);
			b=b.add(new BigInteger(s[1]));
			String out = (reverse(b.toString()));
			out=omit(out);
			System.out.println(out);
		}
	}

	private static String reverse(String string) {
		String out = "";
		for (int i = string.length() - 1; i >= 0; i--)
			out += string.charAt(i);
		return out;
	}

	private static String omit(String string) {
		while (string.charAt(0) == '0')
			string = string.substring(1, string.length());
		return string;
	}
}

Posted on February 4, 2012, in Basic Features, Java BigInteger Class, Mathematics, UVA. Bookmark the permalink. Leave a comment.

Leave a comment