[백준 1654 파이썬] 랜선 자르기

일단 해볼게·2022년 12월 3일
0

백준

목록 보기
75/132

https://www.acmicpc.net/problem/1654

# 랜선 자르기

K, N = map(int, input().split()) # 가지고 있는 랜선 수, 필요한 랜선 수

K_list = [int(input()) for _ in range(K)] # 가지고 있는 랜선 저장

start, end = 1, max(K_list)

while start <= end:
    total = 0
    mid = (start + end) // 2

    for lan in K_list: # mid가 자르는 단위일 때 total은 자른 랜선의 개수
        total += lan // mid
    
    if total >= N: # N개보다 많이 만드는 경우
        start = mid + 1

    else: # N개보다 적게 만드는 경우
        end = mid - 1

print(end)
profile
시도하고 More Do하는 백엔드 개발자입니다.

0개의 댓글