728x90

https://www.acmicpc.net/problem/2805

 

2805번: 나무 자르기

첫째 줄에 나무의 수 N과 상근이가 집으로 가져가려고 하는 나무의 길이 M이 주어진다. (1 ≤ N ≤ 1,000,000, 1 ≤ M ≤ 2,000,000,000) 둘째 줄에는 나무의 높이가 주어진다. 나무의 높이의 합은 항상 M보

www.acmicpc.net

n, m = map(int, input().split())
tree = list(map(int, input().split()))

start = 0
end = max(tree)

while start <= end:
    mid = (start+end)//2
    hap = 0
    for j in tree:
        if j > mid:
            hap += j - mid
    if hap >= m:
        start = mid + 1
    else:
        end = mid -1
print(end)

반응형

'전.py' 카테고리의 다른 글

[python] 1이 될 때까지  (0) 2022.02.09
[python] 백준 15312 이름 궁합  (0) 2022.02.09
[python] 백준 4949 균형잡힌 세상  (0) 2022.02.07
[python] 백준 15829 Hashing  (0) 2022.02.07
[python] 백준 1106 호텔  (0) 2022.02.07
  • 네이버 블러그 공유하기
  • 네이버 밴드에 공유하기
  • 페이스북 공유하기
  • 카카오스토리 공유하기