[백준 알고리즘] 11053번 가장 긴 증가하는 부분 수열. 파이썬(python)
n=int(input()) a=list(map(int, input().split())) dp=[1]*n for i in range(n): for j in range(i): if a[i]>a[j]: # 현재i가 이전j보다 크다면 print('i,j',i,j) print('전',dp) dp[i]=max(dp[i],dp[j]+1) print('후',dp) print() print(max(dp)) dp[i]=max(dp[i],dp[j]+1) 수열 = [10, 20, 10, 30, 20, 50] i,j 3 0 현재 값: 30, 전 값: 10 현재 값이 더 크므로 dp[j]+1 선택 전 [1, 2, 1, 1, 1, 1] 후 [1, 2, 1, 2, 1, 1] 수열 = [10, 20, 10, 30, 20, 50] i,..