#include<stdio.h>
int sl(int num[],int a)
{
int p[1005],b,c;
for(b=a-1;num[a]<=num[b]&&b>=0;b--)
if(b>=0)
{
p[a]++;
return p[a]+sl(num,b);
}
else
return p[a];
}
int main()
{
int n;
while(scanf("%d",&n)==1)
{
int number[1005],po[1005];
for(int m=0;m<n;m++)
{
scanf("%d",&number[m]);
}
for(int i=0;i<n;i++)
{
po[i]=sl(number,i);
}
int max=po[0],min;
for(int i=1;i<n;i++)
{
if(max<po[i])
{
min=max;
max=po[i];
po[i]=min;
}
}
printf("%d\n",max);
}
}
求最长上升子序列所有输出都是0
求指正