''' baekjoon - 2470
* sorting, binary search, pointer
'''
# input
from sys import stdin
n = int(stdin.readline())
sol = list(map(int, stdin.readline().split()))
# sort
sol.sort()
# pointer
l = 0
r = n -1
# standard (dif값을 최대한 크게 설정)
dif = 2000000000
# sol
while l < r:
s_l = sol[l]
s_r = sol[r]
tmp = s_l + s_r
if abs(tmp) < dif:
dif = abs(tmp)
result = [s_l, s_r]
if tmp < 0:
l += 1
else:
r -= 1
print(result[0], result[1])
산성은 양수, 알칼리성은 음수로 나타내며 두 용액을 섞어 최대한 0에 가까운 용액으로 만들어야 하는 문제이다. 우선 입력 값(용액 특성값)을 리스트로 받아 오름차순으로 정렬해준다. 그리고 포인터를 이용해 왼쪽 알칼리성을 가리키는 포인터 하나, 오른쪽 산성을 가리키는 포인터 하나 총 2개를 이용해 서로 더해준 후, 차이(dif)가 적게 나는 것을 result
에 저장해준다.