第31205题 单选题
在C++实现最长上升子序列(LIS)的线性动态规划方案中,若定义dp[i]为以数组第i个元素(下标从1开始)结尾的最长上升子序列长度,初始所有dp[i]=1,以下状态转移方程正确的是?

最长上升子序列指的是从给定序列中选出尽可能多的元素,满足元素值严格递增且元素相对顺序不变,不要求连续。

A

dp[i] = max{ dp[j] + 1 | 1≤j<i 且 a[j] < a[i] }

B

dp[i] = max{ dp[j] + 1 | 1≤j<i 且 a[j] > a[i] }

C

当a[i]>a[i-1]时dp[i] = dp[i-1] + 1,否则dp[i] = dp[i-1]

D

dp[i] = max(dp[i-1], dp[i-2] + 1)

程序运行统计
暂无判题统计
提交0次 正确率0.00%
答案解析