-문제: https://www.acmicpc.net/problem/11055
이전에 풀었던 가장 긴 증가하는 부분 수열의 변형 문제다.
처음에는 그대로 풀었다가 긴 수열을 구성하는 숫자의 합이라는 것을 알고
+=1 대신 +=data[i]을 했더니 정답이 떴다
-정답풀이
n=int(input())
data=list(map(int,input().split()))
dp=[0]*n
for i in range(n):
for j in range(i+1):
if data[i]>data[j] and dp[i]<dp[j]:
dp[i]=dp[j]
dp[i]+=data[i]
print(max(dp))
'백준 > DP' 카테고리의 다른 글
[dp/백준] 2133번: 타일 채우기 (0) | 2022.06.11 |
---|---|
[dp/백준] 11722번: 가장 긴 감소하는 수열 (0) | 2022.06.11 |
[dp/백준] 12865번: 평범한 배낭 (0) | 2022.06.10 |
[dp/백준] 2293번: 동전1 (0) | 2022.06.07 |
[dp/백준] 11057번: 오르막 수 (0) | 2022.06.07 |