解题思路:
注意事项:
参考代码:
def lengthOfLIS(nums):
if len(nums) <= 1:
return len(nums)
dp = [1] * len(nums) # 长度最小都为1
result = 1 # 初始化最大长度为1
for i in range(1, len(nums)):
for j in range(i):
if nums[i] > nums[j]:
dp[i] = max(dp[i], dp[j] + 1)
result = max(result, dp[i]) #取长的子序列
return result
n = int(input())
nums = list(map(int, input().split()))
print(lengthOfLIS(nums))
0.0分
0 人评分
C语言程序设计教程(第三版)课后习题6.1 (C语言代码)浏览:641 |
【亲和数】 (C语言代码)浏览:908 |
C语言程序设计教程(第三版)课后习题5.6 (C语言代码)浏览:909 |
C语言程序设计教程(第三版)课后习题1.5 (C语言代码)浏览:512 |
简单的a+b (C语言代码)浏览:529 |
2004年秋浙江省计算机等级考试二级C 编程题(1) (C语言代码)浏览:331 |
剪刀石头布 (C语言代码)浏览:1519 |
找出最长的字符串来 (C语言代码)浏览:1840 |
C语言程序设计教程(第三版)课后习题8.4 (C语言代码)浏览:607 |
简单的a+b (C语言代码)浏览:531 |