Saturday, April 18, 2015

UVa 11821 - High-Precision Number

// UVa 11821 - High-Precision Number

import java.math.BigDecimal;
import java.util.Scanner;

public class Main {

	private static String removeTrailingZeros(String number) {
		if (!number.contains("."))
			return number;
		int lastIndexToKeep = number.length() - 1;
		while (number.charAt(lastIndexToKeep) == '0')
			lastIndexToKeep--;
		if (number.charAt(lastIndexToKeep) == '.')
			lastIndexToKeep--;
		return number.substring(0, lastIndexToKeep + 1);
	}

	public static void main(String[] args) {

		Scanner scanner = new Scanner(System.in);
		for (int cases = scanner.nextInt(); cases > 0; cases--) {
			BigDecimal bigDec = scanner.nextBigDecimal(), sum = BigDecimal.ZERO;
			while (!bigDec.equals(BigDecimal.ZERO)) {
				sum = sum.add(bigDec);
				bigDec = scanner.nextBigDecimal();
			}
			System.out.println(removeTrailingZeros(sum.toPlainString()));
		}
		scanner.close();

	}

}

No comments:

Post a Comment