백준 1654 : 랜선 자르기 (파이썬)

Yibangwon·2022년 1월 16일
0

알고리즘 문제풀이

목록 보기
4/60


정답 코드

import sys
input = sys.stdin.readline


K, N = map(int, input().split())
lan = []
for i in range(K):
    lan.append(int(input()))

minL, maxL = 0, max(lan)
answer = 0

while minL <= maxL:
    ans = (minL + maxL) // 2
    cnt = 0
    for la in lan:
        cnt += la // ans

    if cnt < N:
        maxL = ans - 1
    elif cnt >= N:
        minL = ans + 1
        answer = ans

print(answer)
profile
I Don’t Hope. Just Do.

0개의 댓글