Cod sursa(job #256238)
| Utilizator | Data | 11 februarie 2009 13:35:46 | |
|---|---|---|---|
| Problema | Subsir crescator maximal | Scor | 35 |
| Compilator | c | Status | done |
| Runda | Arhiva educationala | Marime | 0.48 kb |
#include <stdio.h>
#define SIZE_N 100005
int D[SIZE_N], V[SIZE_N];
int n;
int main()
{
int i, j, maxJ;
freopen("scmax.in", "r", stdin);
freopen("scmax.out", "w", stdout);
scanf("%d", &n);
for(i=1; i<=n; i++)
scanf("%d", &D[i]);
for(i=1; i<=n; i++)
{
maxJ = 0;
for(j=0; j<i; j++)
{
if(D[j] < D[i] && V[maxJ] < V[j])
maxJ = j;
}
V[i] = V[maxJ]+1;
}
maxJ = 1;
for(i=2; i<= n; i++)
if(V[maxJ] < V[i])
maxJ = i;
printf("%d\n", V[maxJ]);
return 0;
}
