LIS1 [백준] BOJ11053 가장 긴 증가하는 부분 수열 - LIS 알고리즘 LIS 알고리즘 - O(N^2) i 를 인덱스 1부터 시작하고, 그 때 j를 0부터 i-1 까지 보면서 최장증가수열을 구하는 알고리즘이다. dp[i] 값을 구하기 위해 이전(0...i-1) 배열값을 모두 다 보아야만 하기 때문에 N^2 의 시간이 걸린다. # 초기값 dp 배열은 1로 초기화 i는 index 1부터 시작해서 N-1까지 진행하고, 그 때마다 j 는 0…i-1 만큼 반복한다. j i arr[] 10 20 10 30 20 50 dp[] 1 1 1 1 1 1 # i = 1 1. j = 0 arr 값을 체크해서 arr[j] < arr[i] 이면, 증가 추세이므로 dp[i] = dp[j] + 1 해준다. j i arr[] 10 20 10 30 20 50 dp[] 1 2 1 1 1 1 # i = 2 1.. 2021. 12. 30. 이전 1 다음