Cod sursa(job #1342810)

Utilizator daianapeterPeter Daiana daianapeter Data 14 februarie 2015 15:52:58
Problema Subsir crescator maximal Scor 70
Compilator cpp Status done
Runda Arhiva educationala Marime 0.89 kb
#include<iostream>
#include<fstream>
using namespace std;
    long a[100001],n,i,l[100001],poz[100001],j;
int main()
{
 
ifstream cin("scmax.in");
ofstream cout("scmax.out");
    cin>>n;
    for(i=1;i<=n;++i)
         
             
        {
    cin>>a[i];l[i]=1;}
 
     
    int maxim=-1,indice,a_de_i;
         
        for(i=n;i>=1;--i)
    {    a_de_i=a[i];
        for(j=n;j>i;--j)
        if(a_de_i<a[j]) 
        if (l[i]<l[j]+1)
            {
                l[i]=l[j]+1;
                poz[i]=j;
                 
                }
                if (maxim<l[i])
                  {
                    maxim=l[i];
                    indice=i;
                    }
}
 
     
 
    // afisez scm
    cout<<maxim<<"\n";
             
    while (indice!=0)
    { cout<<a[indice]<<" ";
     indice=poz[indice];
        }
     
     
    return 0;
}