백준 11053 가장 긴 증가하는 부분 수열

gmlwlswldbs·2021년 9월 16일
0

코딩테스트

목록 보기
13/130
n = int(input())
a = list(map(int, input().split()))

ans = [0] * n

for i in range(n):
    ans[i] = 1
    for j in range(i):
        if a[j] < a[i] and ans[j] + 1 > ans[i]:
            ans[i] = ans[j] + 1
            
print(max(ans))
        

하나짜리 수열도 증가하는 수열인지 몰랐어서 예외처리해야 하나 하고 헤맸음..

n = int(input())
a = list(map(int, input().split()))

ans = [a[0]]

for i in range(1, n):
    if ans[-1] >= a[i]:
        continue
    ans.append(a[i])
    
print(len(ans))

처음 짠 코드는 너무 쉽게 생각함
반례 : 10 20 10 10000 20 30 40 50 60 70

0개의 댓글