백준1 [백준] 2805. 나무 자르기 (Python) 유형 : 이분 탐색 설명 나무를 아래 그림과 같이 자르는 상황이다. 절단할 높이 H를 기준으로 이분 탐색을 한다. H만큼 나무를 자르고, 위에 남은 윗부분을 다 합친다(tree_sum). 상근이는 이걸 집에 가져가는 거다. tree_sum과 필요한 나무(m)를 비교한다. tree_sum이 m 이상이면 : 상근이가 원하는 조건을 만족한다. 현재까지의 정답 중 최댓값으로 업데이트한다. 하지만 우린 '최적의 값', 여기서는 '최댓값'을 찾아야 하기 때문에 h를 늘려서 다시 이분 탐색을 한다. tree_sum이 m보다 작으면 : 나무가 부족하다. 상근이가 원하는 조건을 만족하지 못한다. 나무를 더 베어야 하므로, h를 줄여서 이분 탐색한다. 코드 (Python) # 입력받기 n, m = map(int, inpu.. 2021. 7. 6. 이전 1 다음