문제
DP (Small)
조금 생각이 필요한 LIS 활용문제 입니다.
풀이
인덱스 $i$를 포함하는 $i$까지의 가장 긴 증가하는 부분 수열은 DP를 통해 $O(N^2)$에 구할 수 있습니다.
같은 방식으로 뒤에서부터 $i$까지 가장 긴 감소하는 부분 수열도 $O(N^2)$에 구할 수 있습니다.
이때 $i$까지 가장 긴 증가하는 부분 수열의 길이와 $i$까지 가장 긴 감소하는 부분 수열의 길이를 더한 것에 1을 빼면 답이 됩니다.
코드
1 | |
사실 스크류바 안먹은지 1년 넘었습니다.
DP (Small)
조금 생각이 필요한 LIS 활용문제 입니다.
인덱스 $i$를 포함하는 $i$까지의 가장 긴 증가하는 부분 수열은 DP를 통해 $O(N^2)$에 구할 수 있습니다.
같은 방식으로 뒤에서부터 $i$까지 가장 긴 감소하는 부분 수열도 $O(N^2)$에 구할 수 있습니다.
이때 $i$까지 가장 긴 증가하는 부분 수열의 길이와 $i$까지 가장 긴 감소하는 부분 수열의 길이를 더한 것에 1을 빼면 답이 됩니다.
1 | |