解题思路:
求最长上升序列,动态规划。
注意事项:
条件是只要不是美味度小于前一个就吃的爽,所以是可以等于的。否则会报答案错误27。
参考代码:
n = int(input()) nums = list(map(int,input().split())) dp = [0 for _ in range(n)] maxVal = 0 #求最大上升序列 for i in range(n): dp[i] = 1 for j in range(i): if nums[i] >= nums[j] and dp[i] < (dp[j]+1): dp[i] = dp[j] + 1 if maxVal < dp[i]: maxVal = dp[i] print(maxVal)
0.0分
3 人评分
点我有惊喜!你懂得!浏览:972 |
C语言程序设计教程(第三版)课后习题9.4 (C语言代码)浏览:734 |
C语言程序设计教程(第三版)课后习题7.2 (C语言代码)浏览:620 |
C语言训练-斐波纳契数列 (C语言代码)浏览:1174 |
C语言程序设计教程(第三版)课后习题9.1 (Java代码)浏览:471 |
分糖果 (C++代码)浏览:1447 |
P1001 (C语言代码)浏览:801 |
【亲和数】 (C语言代码)浏览:503 |
wu-淘淘的名单 (C++代码)浏览:1339 |
C语言程序设计教程(第三版)课后习题6.2 (C语言代码)浏览:690 |