728x90
https://www.acmicpc.net/problem/2805
이진탐색으로 높이 H 값을 빠르게 찾는 문제이다.
백준 1654번 랜선자르기와 풀이방법이 유사하다 ~
https://www.acmicpc.net/problem/1654
n, m = map(int, input().split())
data = list(map(int, input().split()))
start = 0
end = max(data)
while start <= end:
mid = (start+end)//2
total = 0
for i in data:
if i >= mid:
total += (i - mid)
if total < m:
end = mid-1
else:
start = mid+1
print(end)
728x90
'Algorithm (PS)' 카테고리의 다른 글
[백준] 17779 게리맨더링2 - Python - 구현 (0) | 2022.12.31 |
---|---|
[백준] 1654번 랜선자르기 Python - 이진탐색 (0) | 2022.12.31 |
[백준] 20364번 : 부동산 다툼 (Python) -이진트리 (0) | 2022.12.29 |
[프로그래머스] 순위 검색 Python3 (0) | 2022.12.27 |
[백준] 3190번: 뱀 (파이썬/Python) - 시뮬레이션, 구현 (0) | 2022.12.27 |