import sys
input = sys.stdin.readline
N = int(input())
pos = []
neg = []
ans = 0
for _ in range(N):
a = int(input())
if a == 1:
ans += 1
elif a > 0:
pos.append(a)
else:
neg.append(a)
pos.sort()
neg.sort(reverse=True)
while pos:
if len(pos) == 1:
ans += pos.pop()
else:
ans += pos.pop() * pos.pop()
while neg:
if len(neg) == 1:
ans += neg.pop()
else:
ans += neg.pop() * neg.pop()
print(ans)
다음 3가지 상황을 고려해야한다.
1. 입력 값이 1인 경우 ans에 그냥 더해준다.
2. 입력 값이 양수인 경우 pos에 모아 sort 후 뒤에서부터 두개씩 뽑아서 곱한 값을 ans에 더해주는 수행을 pos에 1개 요소만 남을 때 까지 한 후 나머지 하나는 그냥 더해준다.
3. 입력 값이 음수인 경우 neg에 모아 내림차순으로 sort 후 뒤에서부터 두개씩 뽑아서 곱한 값을 ans에 더해주는 수행을 neg에 1개 요소만 남을 때 까지 한 후 나머지 하나는 그냥 더해준다.