산성 용액과 알칼리성 용액의 특성값이 배열로 주어질때 두 용액의 특성 값의 합이 0에 가장 가까운 경우를 찾는 문제입니다.(절대값이 작으면 되겠죠?)
import java.io.*;
import java.util.*;
class Pair {
    int i;
    int j;
    int val;
    Pair(int i, int j, int val) {
        this.i = i;
        this.j = j;
        this.val = val;
    }
}
class baek__2470 {
    public static void main(String[] args) throws IOException {
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        int n = Integer.parseInt(br.readLine());
        int[] arr = new int[n];
        String[] temp = br.readLine().split(" ");
        for (int i = 0; i < n; i++) {
            arr[i] = Integer.parseInt(temp[i]);
        }
        Arrays.sort(arr);
        int p1 = 0;
        int p2 = arr.length - 1;
        Pair pair = new Pair(-1, -1, -1);
        int sum = arr[p1] + arr[p2];
        pair.i = p1;
        pair.j = p2;
        pair.val = sum;
        while (p1 < p2) {
            if (Math.abs(sum) < Math.abs(pair.val)) {
                pair.i = p1;
                pair.j = p2;
                pair.val = sum;
            }
            if (sum > 0) {
                sum -= arr[p2];
                p2--;
                sum += arr[p2];
            } else if (sum == 0) {
                break;
            } else {
                sum -= arr[p1];
                p1++;
                sum += arr[p1];
            }
        }
        System.out.print(arr[pair.i] + " " + arr[pair.j]);
    }
}