动态规划模板1|LIS最长上升子序列
Posted fisherss
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了动态规划模板1|LIS最长上升子序列相关的知识,希望对你有一定的参考价值。
LIS最长上升子序列
dp[i]保存的是当前到下标为止的最长上升子序列的长度。
模板代码:
int dp[MAX_N], a[MAX_N], n;
int ans = 0; // 保存最大值
for (int i = 1; i <= n; ++i) {
dp[i] = 1;
for (int j = 1; j < i; ++j) {
if (a[j] < a[i]) {
dp[i] = max(dp[i], dp[j] + 1);
}
}
ans = max(ans, dp[i]);
}
cout << ans << endl; // ans 就是最终结果
以上是关于动态规划模板1|LIS最长上升子序列的主要内容,如果未能解决你的问题,请参考以下文章