728x90
반응형

기본적인 다이나믹 프로그래밍 문제이다. 자기 앞에 자기보다 작은 수가 없는 경우도 있는데,

이 부분만 주의하면 쉽게 풀 수 있다.

from copy import deepcopy

N = int(input())
li = list(map(int, input().split()))
dp = deepcopy(li)
for i in range(1, N):
    for j in range(i):
        if li[j] < li[i]:
            dp[i] = max(dp[i], li[i]+dp[j])
print(max(dp))
728x90
반응형

+ Recent posts