목차

입국심사

ps
링크programmers.co.kr/…
출처프로그래머스
문제 번호43238
문제명입국심사
레벨Level 3
분류

파라메트릭 서치

시간복잡도O(nlog(km/n))
인풋사이즈n<=10^5, m<=10^9, k<=10^9
사용한 언어Python
해결날짜2021/06/29
태그

고득점 Kit - 이분탐색

풀이

코드

"""Solution code for "Programmers 43238. 입국심사".

- Problem link: https://programmers.co.kr/learn/courses/30/lessons/43238
- Solution link: http://www.teferi.net/ps/problems/programmers/43238
"""

from teflib import algorithm


def solution(n, times):

    def is_possible(total_time):
        checkable_passenger_count = sum(total_time // time for time in times)
        return checkable_passenger_count >= n

    upper_bound = max(times) * (len(times) // n + 1)
    return algorithm.binary_search(0, upper_bound + 1, is_possible)