Calculate a+b and output the sum in standard format -- that is, the digits must be separated into groups of three by commas (unless there are less than four digits).
Input Specification:
Each input file contains one test case. Each case contains a pair of integers a and b where −106≤a,b≤106. The numbers are separated by a space.
Output Specification:
For each test case, you should output the sum of a and b in one line. The sum must be written in the standard format.
Sample Input:
-1000000 9
Sample Output:
-999,991
解题思路:
题目大意为输入两整数,求和,在输出时要格式化,即每隔三位加逗号。
在输出时要考虑最前面的负号,避免出现 “-,999,899”情况。
java代码:
import java.io.*;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String[] split = br.readLine().split(" ");
int n = Integer.parseInt(split[0]);
int m = Integer.parseInt(split[1]);
String sum = n + m + "";
StringBuilder builder = new StringBuilder();
int count = 0;
for(int i = sum.length() - 1;i >=0; i--) {
count++;
builder.append(sum.charAt(i));
if(count % 3 == 0 && ((i - 1 >=0) && sum.charAt(i - 1) != '-')) {
builder.append(',');
}
}
System.out.println(builder.reverse().toString());
}
}
PAT提交截图: