반응형
이분탐색으로 풀었다.
이분탐색 문제는 거의 접해보지 못해서 처음에 어떻게 풀어야 하는지 모르고 어려웠다.
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
반응형
'알고리즘 > 프로그래머스 level 3' 카테고리의 다른 글
[파이썬🐍] 프로그래머스 : 정수 삼각형 (0) | 2021.07.19 |
---|---|
[파이썬🐍] 프로그래머스 : 등굣길 (0) | 2021.07.18 |
[파이썬🐍] 프로그래머스 : 네트워크 (0) | 2021.07.17 |
[파이썬🐍] 프로그래머스 : 가장 먼 노드 (0) | 2021.06.30 |
[파이썬🐍] 프로그래머스 : 베스트앨범 (0) | 2021.06.24 |
댓글