99클럽 코테 스터디 3일차 python TIL - 이분탐색(프로그래머스 입국심사)
반응형
- 오늘의 학습 키워드 : 이분탐색, DP
- 공부한 내용
def solution(n, times):
# 탐색 범위 설정: 최소 시간과 최대 시간
start = min(times)
end = max(times) * n
answer = 0
# 이분 탐색
while start <= end:
mid = (start + end) // 2 # 현재 시점에서의 중간 시간
result = 0 # 현재 시간 내에 심사할 수 있는 총 인원 수
# 각 심사관이 `mid` 시간 내에 처리할 수 있는 사람 수를 합산
for i in times:
result += mid // i # 각 심사관이 처리 가능한 사람 수 계산
# 처리할 수 있는 사람 수가 `n`명 이상이면 더 작은 시간으로 탐색
if result >= n:
answer = mid # 가능한 최소 시간 저장
end = mid - 1 # 더 작은 시간 범위를 탐색
else:
start = mid + 1 # 더 많은 시간을 필요로 하는 범위를 탐색
return answer # 최소 시간이 담긴 `answer` 반환
반응형
'Python > 😈 99클럽 코테 스터디 4기 TIL' 카테고리의 다른 글
99클럽 코테 스터디 7일차 TIL - (프로그래머스 - 모음사전) (3) | 2024.11.03 |
---|---|
99클럽 코테 스터디 6일차 TIL - BFS (백준 2458번 - 키 순서) (0) | 2024.11.03 |
99클럽 코테 스터디 4일차 python TIL - 이분탐색(백준2512 예산) (0) | 2024.11.01 |
99클럽 코테 스터디 2일차 TIL - 이분탐색 (백준 1072번 ) (0) | 2024.10.29 |
99클럽 코테 스터디 1일차 TIL - 이분탐색 (백준 1072번 ) (3) | 2024.10.28 |