17216๋ฒ - ๊ฐ์ฅ ํฐ ๊ฐ์ ๋ถ๋ถ ์์ด
๊ฐ์ฅ ํฐ ๊ฐ์ํ๋ ๋ถ๋ถ ์์ด์ ํฉ์ ๊ตฌํ๋ ๋ฌธ์ ์ ๋๋ค.
import copy
N = int(input())
lst = list(map(int,input().split()))
dp = copy.deepcopy(lst)
ํฉ์ ์ต์๋ ์๊ธฐ ์์ ์ด๋ฏ๋ก dp๊ฐ์ ๊ธฐ์กด ๋ฆฌ์คํธ ์ธ๋ฑ์ค์ ๋๊ฐ์ด ์ด๊ธฐํํด์ค๋๋ค.
for i in range(len(lst)):
for j in range(i):
if lst[i] < lst[j]:
dp[i] = max(dp[i],dp[j]+lst[i])
๊ฐ ์ธ๋ฑ์ค๋ง๋ค ์ํ๋ฅผ ๋๋ฉฐ ์๊ธฐ ์์ ๋ณด๋ค ํฐ ์ธ๋ฑ์ค๊ฐ ์กด์ฌํ๋ฉด ์๊ธฐ ์์ ์ dp๊ฐ๊ณผ ์๊ธฐ์์ +ํฐ ์ธ๋ฑ์ค์ dp๊ฐ ์ ๋์กฐํ์ฌ ๋ ํฐ ๊ฐ์ ๋ฃ์ด์ฃผ๋๋ก ํฉ์๋ค.
print(max(dp))
ํด๋น dp๊ฐ์์ ์ ์ผ ํฐ ๊ฐ์ ์ถ๋ ฅํ๋ฉด ๋ฉ๋๋ค.