본문 바로가기
Beakjoon&프로그래머스/파이썬

[백준/파이썬] 14501번 퇴사

by 현장 2022. 5. 12.

-Code

n = int(input())
days = []
dp = [0] * (n + 1)
for _ in range(n):
    t, p = map(int, input().split())
    days.append((t, p))
for i in range(n):
    for j in range(i + days[i][0], n + 1):
        if dp[j] < dp[i] + days[i][1]:
            dp[j] = dp[i] + days[i][1]
print(max(dp))

머리로는 이해가 되는데 코딩이 잘 안 돼서 결국 찾아보고 부족한 부분을 해결했습니다. dp문제를 많이 풀어봐야겠다고 생각했습니다.