https://www.acwing.com/problem/content/description/1016/
1014 爬山
就是穷举啊,太朴素了
#include<iostream>
#include<algorithm>
using namespace std;
const int N=1004;
int a[N],s[N],d[N];
int main()
{
int n; cin>>n;
for(int i=0;i<n;i++)
cin>>a[i];
for(int i=n-1;i>=0;i--)
for(int j=n-1;j>i;j--)
if(a[j]<a[i])
d[i]=max(d[i],d[j]+1);
for(int i=0;i<n;i++)
for(int j=0;j<i;j++)
if(a[j]<a[i])
s[i]=max(s[i],s[j]+1);
int res=0;
for(int i=0;i<n;i++)res=max(res,s[i]+d[i]);
cout<<res+1<<endl;
return 0;
}