https://www.acmicpc.net/problem/1253
import sys
input = sys.stdin.readline
n = int(input())
arr = list(map(int, input().split()))
ans = 0
arr.sort()
for i in range(n):
temp = arr[:i] + arr[i+1:]
left = 0
right = len(temp)-1
while left < right:
cnt = temp[left] + temp[right]
if cnt == arr[i]:
ans += 1
break
if cnt > arr[i]:
right -= 1
else:
left += 1
print(ans)
특정 숫자를 제외한 숫자를 기준으로 배열을 만든다.
이후, 이분탐색을 이용해 '좋다'는 값을 구한다.