이분탐색
🌏 문제
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
👽 풀이
제한 사항에 밑도 끝도 없이 큰 수가 나오면 이분탐색이다. 해야한다
def solution(n, times):
answer = 0
start, end = 0, max(times) * n
while start <= end:
mid = (start + end) // 2
total = 0 # mid분동안 심사받은 사람 수
for time in times:
total += mid // time
if total >= n:
break
if total >= n:
answer = mid
end = mid-1
elif total < n:
start = mid+1
return answer
728x90
'💡코딩테스트 > 프로그래머스' 카테고리의 다른 글
[프로그래머스 | 파이썬 python] 순위 (0) | 2023.05.21 |
---|---|
[프로그래머스 | 파이썬 python] 가장 먼 노드 (1) | 2023.05.20 |
[프로그래머스 | 파이썬 python] 여행경로 (0) | 2023.05.18 |
[프로그래머스 | 파이썬 python] 단어 변환 (0) | 2023.05.17 |
[프로그래머스 | 파이썬 python] 게임 맵 최단거리 (0) | 2023.05.17 |