[파이썬][백준 2470][💛골드 5] 두 용액 (투포인터)
Categories: BOJ
Tags: Coding Test Python Algorithm
🧞♂️ 난이도
💛 골드 5
🧞♂️ 문제
🧞♂️ 내 풀이
전형적인 정석 투포인터로 풀면 된다. 정렬을 시키고나서, 양끝을 더해서 왼쪽을 좁힐지 오른쪽을 좁힐지 판단하면서 풀어나가면 된다.
🧞♂️ 파이썬 코드
N = int(input())
nums = sorted(list(map(int, input().split())))
start, end = 0, N-1
answer_start, answer_end = start, end
total = abs(nums[start] + nums[end])
while start < end:
temp = nums[start] + nums[end]
if abs(temp) < total:
answer_start, answer_end = start, end
total = abs(temp)
if total == 0:
break
if temp > 0:
end -= 1
else:
start += 1
print(nums[answer_start])
print(nums[answer_end])