관리 메뉴

솜씨좋은장씨

[BaekJoon] 11053번 : 가장 긴 증가하는 부분수열 (Python) 본문

Programming/코딩 1일 1문제

[BaekJoon] 11053번 : 가장 긴 증가하는 부분수열 (Python)

솜씨좋은장씨 2020. 5. 10. 22:49
728x90
반응형

1일 1문제 94일차!

오늘의 문제는 가장 긴 증가하는 부분수열입니다.

 

11053번: 가장 긴 증가하는 부분 수열

수열 A가 주어졌을 때, 가장 긴 증가하는 부분 수열을 구하는 프로그램을 작성하시오. 예를 들어, 수열 A = {10, 20, 10, 30, 20, 50} 인 경우에 가장 긴 증가하는 부분 수열은 A = {10, 20, 10, 30, 20, 50} 이

www.acmicpc.net

Solution

inputNum = int(input())
inputNums = input()
inputNums = inputNums.split()
inputNums = [int(num) for num in inputNums]
nc = [0] * (inputNum)
maxNum = 0

for i in range(0, inputNum):
    minNum = 0
    for j in range(0, i):
        if inputNums[i] > inputNums[j]:
            if minNum < nc[j]:
                minNum = nc[j]
    #print(inputNums, nc)
    nc[i] = minNum + 1
    if maxNum < nc[i]:
        maxNum = nc[i]
print(maxNum)
 

SOMJANG/CODINGTEST_PRACTICE

1일 1문제 since 2020.02.07. Contribute to SOMJANG/CODINGTEST_PRACTICE development by creating an account on GitHub.

github.com

 

Comments