N을 받은 배열의 길이라하고, a를 받은 N 길이의 배열이라고할때

n 을 N-1에서부터 0까지 흩어가면서

각 a[n]에 대해서 거기서부터 시작한 부분수열의 최대합을 dp[n]에 저장합니다.

구체적으로 저장하는 방법은,

a[n] 에 대해서 그 이후 즉, i = n+1 ~ N-1 까지에 대해서

현재최댓값에 a[n]을 저장한후,

a[i] > a[n] 이면 a[n] + dp[i] 와 현재 최댓값중 더 큰값을,

a[i] <= a[n] 이면 dp[i] 와 현재 최댓값 중 더 큰값을 dp[n]에 저장하는 함수입니다.

틀린이유를 진짜 모르겠습니다 살려주세요 ㅠㅠ

아래 코드입니다,


viewimage.php?id=3dafdf21f7d335ab67b1d1&no=24b0d769e1d32ca73ded84fa11d028310ef2ab22591d9bdbf8feafbf5a5da2eb4840aefb8409742d1a760a43811d05f03c061fed49519b911ddb00741c67f63a4a68083fc88d64