题意:求最大上升子序列。
#include <iostream>
#include<cstdio>
#include<cmath>
#include<cstring>
using namespace std;
int d[1100],a[1100];
int main()
{
int n;
while(~scanf("%d",&n))
{
for(int i=0;i<n;i++) scanf("%d",&a[i]),d[i]=1;
int ans=0;
for(int i=0;i<n;i++)
{
for(int j=0;j<i;j++)
if(a[i]>a[j])
d[i]=max(d[i],d[j]+1);
ans=max(ans,d[i]);
}
cout<<ans<<endl;
}
}