提交时间:2024-03-30 14:45:44

运行 ID: 140375

#include<bits/stdc++.h> using namespace std; const int Maxn=10001; int a[Maxn],dp[Maxn]={1}; int n,tmp,lis; int main() { cin>>n; cin>>a[1]; for (int i=2;i<=n;i++) { cin>>a[i]; tmp=-1; for (int j=i-1;j>0;j--) { if (a[j]>=a[i]) tmp=max(tmp,a[j]); } if (tmp!=-1) dp[i]+=tmp; lis=max(dp[i],lis); } cout<<lis<<endl; return 0; }