004 컴퓨터과학/알고리즘
[백준 온라인저지] 이진 탐색 / 2805. 나무 자르기
Dallas
2023. 6. 6. 11:14
반응형
문제
예제
소스코드
시간 : 4292ms
n, m = map(int, input().split(' '))
arr = list(map(int, input().split(' ')))
arr.sort()
start = 1
end = max(arr)
result = 0
while (start <= end) :
length = 0
mid = (start + end) // 2
for x in arr :
if x > mid :
length += x - mid
if length == m :
result = mid
break
elif length > m :
result = mid
start = mid + 1
else :
end = mid - 1
print(result)
반응형