[백준 2512 파이썬] 예산

일단 해볼게·2022년 12월 1일
0

백준

목록 보기
73/132

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

# 예산

N = int(input()) # 지방의 수

budget = list(map(int, input().split())) # 각 지방의 예산요청

M = int(input()) # 총 예산

start, end = 1, max(budget)

def is_successed(budget, mid):
    sum_money = 0

    for money in budget: # 예산과 mid 값 비교 후 작은 값 더하기
        sum_money += min(mid, money)

    return sum_money <= M # sum이 총 예산보다 작거나 같으면 True, 크면 False

while start <= end:
    mid = (start + end) // 2

    if is_successed(budget, mid):
        start = mid + 1 
    else:
        end = mid - 1

print(end)
profile
시도하고 More Do하는 백엔드 개발자입니다.

0개의 댓글