카테고리 없음

[백준][Python] 16401 과자 나눠주기

findTheValue 2021. 10. 16. 03:35

parametric search로 원하는 갯수로 나눌 수 있는 최대 길이를 탐색

 

import sys
input = sys.stdin.readline

M, N = map(int, input().split())
L = list(map(int, input().split()))
start, end = 1, max(L)
answer = 0
while start <= end:
    target_l = (start + end) // 2
    if sum([each_l // target_l for each_l in L]) >= M:
        answer = target_l
        start = target_l + 1
    else:
        end = target_l - 1
print(answer)