题目描述:给定区间[-2的31次方, 2的31次方]内的3个整数A、B和C,请判断A+B是否大于C。
输入描述:输入第1行给出正整数T(<=10),是测试用例的个数。随后给出T组测试用例,每组占一行,顺序给出A、B和C。整数间以空格分隔。
输出描述:对每组测试用例,在一行中输出“Case #X: true”如果A+B>C,否则输出“Case #X: false”,其中X是测试用例的编号(从1开始)。

输入例子:
4
1 2 3
2 3 4
2147483647 0 2147483646
0 -2147483648 -2147483647

输出例子:
Case #1: false
Case #2: true
Case #3: true
Case #4: false

解题思路:

  1. int型变量占4个字节,取值范围为-2的31次方到2的31次方-1,所以此题用long型来存取A、B、C。
  2. 由输入描述可知,我们需要键入行数,且每行每行需要输入3个long型整数,可以使用二维数组来记录。
  3. 使用两次数组遍历+对应操作即可完成题目需求。
import java.util.Scanner;
public class ABC {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int line = sc.nextInt();//输入行数
        long[][] arr = new long[line][3];
        //遍历数组存A、B、C
        for (int i = 0; i < line; i++) {
            for (int j = 0; j < 3; j++) {
                arr[i][j] = sc.nextLong();
            }
        }
        //遍历数组取A、B、C做判断
        for (int i = 0; i < line; i++) {
            boolean flag = (arr[i][0] + arr[i][1]) > arr[i][2];
            System.out.println("Case #" + (i+1) + ": " + flag);
        }
    }
}