求最长不升子序列
#include<stdio.h>
int main()
{
int a[30],d[30],i,j,max,n;
while(scanf("%d",&n)!=EOF)
{
for(i=0;i<n;i++)
scanf("%d",&a[i]);
d[0]=1;
for(i=1;i<n;i++)
{
d[i]=1;
for(j=0;j<i;j++)
if(a[j]>=a[i]&&d[j]+1>d[i])
d[i]=d[j]+1;
}
max=d[0];
for(i=1;i<n;i++)
if(max<d[i]) max=d[i];
printf("%d\n",max);
}
return 0;
}