Python/백준 문제풀이

[백준 9237] 이장님 초대 파이썬 문제 풀이

코딩하는 친구 2023. 7. 18. 16:01

문제 풀이: 최대한 빨리 나무들을 모두 자라게 하려면 오래 걸리는 나무부터 심어야 한다. 따라서 나무들의 일수를 먼저 내림차순 정렬을 한다. 그다음 아래 내용에 따라 새로운 리스트를 만든다.

  • 묘목을 심는 데 걸리는 시간: 1일
  • 묘목이 자라는데 걸리는 시간: tree[i]
  • 몇 번째 나무를 심는지: +i
  • 나무가 다 자란 다음날 이장님 초대: 1일

따라서 새로운 리스트는 tree[i] = tree[i] + i + 1이고 이장님을 초대할 수 있는 날은 (max(tree) + 1) 이다.

n = int(input())
tree = list(map(int, input().split()))
tree.sort(reverse=True)

for i in range(len(tree)):
    tree[i] = tree[i] + i + 1
print(max(tree) + 1)