
''' 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에 저장해준다.