Cod sursa(job #800280)
Utilizator | Data | 21 octombrie 2012 11:17:51 | |
---|---|---|---|
Problema | Subsir crescator maximal | Scor | 35 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.48 kb |
#include<iostream>
#include<cstdio>
#define M 100001
using namespace std;
int n, a[M], b[M];
int main(){
int i, j, max;
freopen("scmax.in","r",stdin);
freopen("scmax.out","w",stdout);
cin>>n;
for(i=1;i<=n;i++)
cin>>a[i];
b[1]=1;
for(i=2;i<=n;i++){
int max=0;
for(j=1;j<i;j++)
if(a[j]<a[i] && b[j]>max)
max=b[j];
b[i]=max+1;
}
max=0;
for(i=1;i<=n;i++)
if(max<b[i])
max=b[i];
cout<<max<<'\n';
return 0;
}