Skip to main content

백준 11722 가장 긴 감소하는 부분 수열

·74 words·1 min· loading

https://www.acmicpc.net/problem/11722

11722번: 가장 긴 감소하는 부분 수열수열 A가 주어졌을 때, 가장 긴 감소하는 부분 수열을 구하는 프로그램을 작성하시오. 예를 들어, 수열 A = {10, 30, 10, 20, 20, 10} 인 경우에 가장 긴 감소하는 부분 수열은 A = {10, 30, 10, 20, 20, 10}www.acmicpc.net

‘가장 긴 증가하는 부분 수열’ 의 반대로만 하면 된다.

n=int(input())a=[* map(int,input().split())]dp=[1 for x in range(n)]
for i in range(1,len(dp)):    max_len=0    for j in range(i):
        if a[i]<a[j]:            max_len=max(max_len, dp[j])    dp[i]+=max_len
print(max(dp))