본문 바로가기
백준알고리즘/이분탐색

(Python/🥈2)백준알고리즘 1654번: 랜선 자르기

by windy7271 2022. 9. 2.
728x90
반응형

문제출처:https://www.acmicpc.net/problem/1654

 

1654번: 랜선 자르기

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

www.acmicpc.net

풀이:

K,N = map(int,(input().split()))    # 이미 가지고 있는 랜선의 개수 K, 필요한 랜선의 개수 N
line = [int(input()) for i in range(K)]
start, end = 1, max(line)

while start <= end:
    mid = (start + end) // 2
    res = 0 # 필요한 라인 수

    for i in line:
        res += i // mid
    if res >= N:
        start = mid+1
    else:
        end = mid-1

print(end)

 

반응형

댓글