문제
백준 2805
방법 1
설명
Bineary Search 를 해야하는데 문제 조건이 그 수와 같은 값이 아니라 같거나 큰 값임.
그래서 바로 적용하면 문제가 생김.
이때 아이디어는 ans
를 특정 조건에만 업데이트 하는 것임.
- mid 에서의 계산값이
m
보다 클 때
ans
가 mid 보다 작으면 mid 값으로 업데이트
시간 복잡도
O(n*logn)
코드
방법 2
설명
먼저 주어진 인풋을 내림차순으로 정렬을 함.
그리고 큰 나무부터 차례로 모으면, 지금까지 모은 나무의 갯수 * 다음 나무와의 높이 차
만큼 나무를 모을 수 있음.
그러다가 원하는 나무양을 초과하면 다음 나무와의 높이 차
를 적절히 조절하면 됨.
시간 복잡도
O(n*logn)
코드
댓글남기기