문제 링크: https://www.acmicpc.net/problem/14501
백준 알고리즘 기초 2/2 530에서 3번째 - 14501번 퇴사를 풀어보았다.
풀이: https://jrc-park.tistory.com/119 를 참고했다.
C++
Python
n=int(input())
arr=[list(map(int,input().split())) for i in range(n)]
dp=[0 for i in range(n+1)]
for i in range(n-1,-1,-1):
if arr[i][0]+i>n:
dp[i]=dp[i+1]
else:
dp[i]=max(dp[i+1],arr[i][1]+dp[i+arr[i][0]])
print(dp[0])
Java
'코테용 문제풀이 > 백준' 카테고리의 다른 글
링크와 스타트 풀이 (0) | 2023.01.29 |
---|---|
스타트와 링크 풀이 (0) | 2023.01.29 |
암호 만들기 풀이 (0) | 2023.01.28 |
로또 풀이 (0) | 2023.01.28 |
외판원 순회 2 풀이 (0) | 2023.01.25 |