
이분탐색
백준 1590번 캠프가는 영식


import sys
input=sys.stdin.readline
n,t=map(int,input().rstrip().split())
result=[]
for _ in range(n):
s,i,c=map(int,input().rstrip().split())
time = [s+(i*k) for k in range(c)]
if time[-1] < t:
continue
start,end,ans = 0,c-1,0
while start<=end:
mid=(start+end)//2
if time[mid]>=t:
ans=mid
end=mid-1
else:
start=mid+1
result.append(time[ans]-t)
print(min(result) if result else -1)
이분탐색 사용
버스 출발 시간 - 영수 도착 시간을 result에 추가새롭게 안 개념은 없었다.
내일의 알고리즘 문제를 풀어보고 이해하기
#99클럽 #코딩테스트준비 #개발자취업 #항해99 #TIL