알고리즘/백준

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

알감자 2022. 1. 2. 01:35
 

1654번: 랜선 자르기

첫째 줄에는 오영식이 이미 가지고 있는 랜선의 개수 K, 그리고 필요한 랜선의 개수 N이 입력된다. K는 1이상 10,000이하의 정수이고, N은 1이상 1,000,000이하의 정수이다. 그리고 항상 K ≦ N 이다. 그

www.acmicpc.net

 

코드

import sys

if __name__ == '__main__':
    k, n = map(int, input().split())
    li = []
    for _ in range(k):
        li.append(int(input()))

    low, high = 0, sys.maxsize

    while low <= high:
        mid = (low+high)//2
        num = 0
        for i in li:
            num += i//mid
        if num >= n:
            low = mid +1
        else:
            high = mid -1

    print(high)