Run ID | 作者 | 问题 | 语言 | 测评结果 | 分数 | 时间 | 内存 | 代码长度 | 提交时间 |
---|---|---|---|---|---|---|---|---|---|
140418 | 杨博煊 | 最长不下降子序列 | C++ | 运行超时 | 70 | 1000 MS | 1020 KB | 393 | 2024-03-30 15:11:51 |
#include<bits/stdc++.h> using namespace std; int main(){ /* 方程:dp[i] = max{dp[j]} + 1 */ int i,j,a[100005],dp[100005],n; int l = 1; cin>>n; for(i = 1;i <= n;i++){ cin>>a[i]; dp[i] = 1; } for(i = 2;i <= n;i++){ for(j = 1;j < i;j++){ if(a[j] <= a[i] && dp[j] + 1 > dp[i]){ dp[i] = dp[j] + 1; l = max(dp[i],l); } } } cout<<l<<endl; }