본문 바로가기
개발공부/[코딩테스트_SWEA]

[SWEA 5262][Python] [파이썬 S/W 문제해결 최적화] 4일차 - 정렬된 부분 집합

by 왜지? 2022. 12. 28.
반응형

코드

## SWEA 5262
T = int(input())
for test_case in range(1, T + 1):
    arry = list(map(int, input().split()))
    N = arry[0]
    arry = arry[1:]
    rank_arry = [1]*N

    for i in range(N):
        for j in range(i+1) :
            if i != j :
                if arry[i] > arry[j] :
                    tmp = rank_arry[j]+1
                    if tmp > rank_arry[i] :
                        rank_arry[i] = tmp

    print(f"#{test_case} {max(rank_arry)}")

풀이

기본 rank_arry를 1로 초기화 한 뒤 순차적으로 반복하며 원소가 더 큰 경우에만 해당 원소의 rank에 1씩 더해가며 rank_arry를 완성했다. 

반응형

댓글