x 센치의 너비를 가진 구멍을 채우기 위해서 길이의 합이 구멍의 너비와 정확하게 일치하는 두 개의 레고 조각이 필요하다.
각 테스트 케이스마다
가 주어질때, 구멍을 완벽하게 막을 수 있는 두 조각을 구하시오.
EZ한 투포인터 문제였다,,~ 근데 테스트케이스가 몇개인지 주어지지 않기 때문에 try except를 이용해서 풀어야 한다.
각 테스트 케이스마다
1. 레고 조각의 길이를 정렬
2. 투포인터를 사용해서 구멍과 일치하는 두조각 찾기
로 풀면 된다.
import sys
input = sys.stdin.readline
while True:
try:
x = int(input())* pow(10,7)
n = int(input())
lego = []
for _ in range(n):
lego.append(int(input()))
# 1. 정렬하기
lego.sort()
# 2. 투포인터로 탐색
left, right = 0, len(lego)-1
flag = False
while left < right :
if lego[left] + lego[right] == x:
flag = True
print("yes", str(lego[left]), str(lego[right]))
break
elif lego[left] + lego[right] > x:
right -= 1
else:
left += 1
if flag == False:
print("danger")
except:
break