알고리즘/프로그래머스 level 3
[파이썬🐍] 프로그래머스 : 입국심사
코딩개미뚠뚠
2021. 6. 25. 21:54
반응형
이분탐색으로 풀었다.
이분탐색 문제는 거의 접해보지 못해서 처음에 어떻게 풀어야 하는지 모르고 어려웠다.
left와 right를 어떤 수로 해야하는 지가 가장 중요한 것 같다.
def solution(n, times):
answer = 0
left = 1
right = max(times) * n
while left < right :
mid = (left + right) // 2
total = 0 #총 심사 받는 사람 수
for t in times : total += mid // t
if total >= n : right = mid #심사 받는 사람이 n보다 많거나 같으면 범위 작은 수쪽으로 줄이기
else : left = mid + 1#심사 받는 사람이 n보다 적으면 범위 큰 수쪽으로 줄이기
answer = left
return answer
반응형