Cod sursa(job #1358924)

Utilizator ClaudiuHHiticas Claudiu ClaudiuH Data 24 februarie 2015 20:38:06
Problema Subsir crescator maximal Scor 70
Compilator cpp Status done
Runda Arhiva educationala Marime 0.7 kb
#include<fstream>
using namespace std;
    ifstream cin("scmax.in");
    ofstream cout("scmax.out");

int main()
{
    long n,lung[100000],urm[100000],a[100000],maxim=0;
    int i,j,indice;
    cin>>n;
    for(i=1;i<=n;++i)
        cin>>a[i];
    for(i=n;i>=1;--i){
        //urm[i]=-1;
            lung[i]=1;

        for( j=n;j>i;--j ){
            if( a[i] < a[j] )
            if( lung[i] < lung[j]+1 ){

                lung[i]=lung[j]+1;
                urm[i]=j;
                if(lung[i]>maxim){
                 maxim=lung[i];
                 indice=i;}
            }

        }
    }
        cout<<maxim<<"\n";
    while(indice!=0){
    cout<<a[indice]<<" ";
    indice=urm[indice];
}



    return 0;
}