最大ローカル増分数列
4077 ワード
作成日:2022年2月23日午後5:09
iの第1の値位置では、最長の数列は第1の値から始まり、i−1の値(j)の中でiより小さく、最も長い値を探し、その値の中の数列の最大長に1を加算する.
インプリメンテーションコード
# 최대 부분 증가수열
import sys
sys.stdin = open("input.txt", "rt")
n = int(input())
arr = list(map(int, input().split()))
arr.insert(0, 0)
dy = [0] * (n+1)
dy[1] = 1
for i in range(2, n+1):
maxLen = 0
for j in range(1, i):
if arr[i] > arr[j]:
if dy[j] > maxLen:
maxLen = dy[j]
dy[i] = maxLen+1
print(dy)
Reference
この問題について(最大ローカル増分数列), 我々は、より多くの情報をここで見つけました https://velog.io/@lsj8706/최대-부분-증가-수열テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol