코테 준비/이진탐색
1654. 랜선 자르기 (Python)
imsmile2000
2022. 12. 8. 20:25
랜선을 모두 N개의 같은 길이의 랜선으로 만들기 위해 K개의 랜선을 잘라서 만들어야 한다
import sys
k,n=map(int,sys.stdin.readline().split())
lan=[]
for i in range(k):
lan.append(int(input()))
def binary(n,start,end):
if start>end:
print(end)
return
mid=(start+end)//2
count=0
for i in lan:
max=i//mid
count+=max
if count<n:
return binary(n,start,mid-1)
else:
return binary(n,mid+1,end)
binary(n,1,max(lan))