递归的顺序很重要
#include<iostream>
using namespace std;
const int N=1010;
int q[N],w[N];
int n,cnt;
int main()
{
cin>>n;
for (int i=0;i<n;i++)
{
cin>>q[i];
}
for (int i=0;i<n;i++)
{
w[i]=1;
for (int j=0;j<i;j++)
if (q[i]>q[j])w[i]=max(w[i],w[j]+1);
cnt =max(w[i],cnt );
}
cout <<cnt ;
return 0;
}