sdut 1299 最长上升子序列
题目:http://acm.sdut.edu.cn/sdutoj/problem.php?action=showproblem&problemid=1299
代码:

1 #include<stdio.h> 2 int main() 3 { 4 int n,i,j; 5 int a[1010],len[1010],max,maxlen=1; 6 scanf("%d",&n); 7 for(i=0;i<=9;i++) 8 len[i]=1; 9 for(i=0;i<n;i++) 10 { 11 scanf("%d",&a[i]); 12 } 13 for(i=1;i<n;i++) 14 { 15 max=0; 16 for(j=0;j<=i-1;j++) 17 { 18 19 if(a[j]<a[i]&&len[j]>max) 20 max=len[j]; 21 } 22 len[i]=max+1; 23 if(len[i]>maxlen) 24 maxlen=len[i]; 25 } 26 printf("%d\n",maxlen); 27 return 0; 28 } 29