java skil

114 阅读1分钟

乱序整数序列两数之和绝对值最小|华为机试题

| 机试题 | 实现语言 | java |

public class MaxMatrix {
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        String[] nums = in.nextLine().split(" ");
        int sum = 0;
        String numx = "";
        String numy = "";
        int minsum = -1;
        for (int i = 0; i < nums.length; i++) {
            for (int j = i + 1; j < nums.length; j++) {
                sum = Math.abs(Integer.parseInt(nums[i]) + Integer.parseInt(nums[j]));
                if (minsum == -1 || sum < minsum) {
                    minsum = sum;
                    numx = String.valueOf(nums[i]);
                    numy = String.valueOf(nums[j]);
                    if (Integer.parseInt(numx) > Integer.parseInt(numy)) {
                        int temp = Integer.parseInt(numx);
                        numx = numy;
                        numy = String.valueOf(temp);
                    }
                }
            }
        }
        System.out.println(numx + " " + numy + " " + minsum);
    }
}