题解 | #Redraiment的走法#

Redraiment的走法

https://www.nowcoder.com/practice/24e6243b9f0446b081b1d6d32f2aa3aa

#动态规划求解
#我的目前的子序列是a = [...]
#d[i]表示以i结尾的最长子序列
#状态转移方程
#if a[j] < a[i] j 1<j<i
#   d[i] = max(d[j]+1,d[i])

n = int(input())
nums = list(map(int,input().strip().split()))
dp = [1]*len(nums)

for i in range(n):
    for j in range(i):
        if nums[j] < nums[i]:
            dp[i] = max(dp[i],dp[j]+1)

max_len = max(dp)
print(max_len)

全部评论

相关推荐

点赞 收藏 评论
分享
牛客网
牛客企业服务