HDU 1257
#include<stdio.h> int a[1005]; int main() { int T,x,k,j; while(~scanf("%d",&T)) { a[1] = 30010; k = 1; while(T--) { scanf("%d",&x); for(j = 1;j <= k;j ++) { if(a[j]>=x) { a[j] = x; break ; } } if(j>k) { k++; a[k] = x; } } printf("%d\n",k); } return 0; }