#include <stdio.h>
int a[30010];
int main() {
int n;
while (scanf("%d", &n) != EOF) {
int i, min = 0;
scanf("%d", &n);
for (i = 0; i < n; i++) {
int high;
scanf("%d", &high);
if (i == 0) {
a[i] = high;
min++;
}
else {
int j, low = 50000, lown, flag = 0;
for (j = 0; j < min; j++) {
if (a[j] < low&&a[j] >= high) {
low = a[j];
lown = j;
flag = 1;
}
}
if (flag == 1) {
a[lown] = high;
flag = 0;
}
else {
a[min] = high;
min++;
}
}
}
printf("%d\n", min);
}
}
10-19