30 lines
471 B
C
30 lines
471 B
C
#include <stdio.h>
|
|
|
|
#define MAX 1000
|
|
|
|
int A[MAX], dp[MAX];
|
|
int N, ans;
|
|
|
|
int max(int a, int b) {
|
|
return a > b ? a : b;
|
|
}
|
|
|
|
int main() {
|
|
scanf("%d", &N);
|
|
for(int i=0; i<N; i++) {
|
|
scanf("%d",&A[i]);
|
|
dp[i] = 1;
|
|
}
|
|
|
|
for(int i=1; i<N; i++) {
|
|
for(int j=0; j<i; j++) {
|
|
if(A[i] > A[j]) dp[i] = max(dp[i], dp[j] + 1);
|
|
}
|
|
}
|
|
|
|
for(int i=0; i<N; i++) ans = max(dp[i], ans);
|
|
|
|
printf("%d\n", ans);
|
|
|
|
return 0;
|
|
} |