Cod sursa(job #895320)

Utilizator baitan_biancaBaitan Bianca baitan_bianca Data 27 februarie 2013 10:54:49
Problema Subsir crescator maximal Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.77 kb
#include <fstream>

using namespace std;
ofstream out("subsir.out");

int n,x[100],l[100],ant[100];
void solutie (int p)
{
    if(p>=0)
    {
     solutie(ant[p]);
     out<<x[p]<<" ";
    }
}

int main()
{
    ifstream in("subsir.in");
    in>>n;
    int i,j,lmax,a,p;
    for(i=0;i<n;i++)
        in>>x[i];
    in.close();
    for(i=0;i<n;i++)
    {
        lmax=0; a=-1;
        for(j=0;j<i;j++)
         if(x[i]>=x[j])
                if(l[j]>lmax)
                {
                    lmax=l[j];
                    a=j;
                }
                l[i]=lmax+1;
                ant[i]=a;

    }
    lmax=0;p=0;
    for(i=0;i<n;i++)
        if(l[i]>lmax){lmax=l[i];p=i;}
        solutie(p);
        out.close();
        return 0;
}