나무 자르기

나무 자르기

Prob

주어진 나무 수 N
필요한 나무 길이 M
절단기 높이 H
나무를 필요한 만큼만 가져가기 위한 절단기 높이의 최댓값

Solv

나무 tree를 H로 절단해서 모두 더한 길이를 n이라 할 때, n이 M이 되는 값 이분 탐색
low를 0으로 high는 tree의 최댓값으로 설정
n\(>=\)N인 경우 low = H+1
n\(<\)N인 경우 high = H-1
low > high 일때까지 반복

Check

N=4 M=7
tree=[20 15 10 17]

Hlowhighn
1002022
1510+1207
1815+1202
1615+118-15
151616-17

N=4 M=7
tree=[50 15 10 17]

Hlowhighn
2505025
3825+15012
4438+1506
413944-19
4241+1438
4342+1437
4343+1437

Ref


Modified by Sungbin Shim