Cod sursa(job #2527209)

Utilizator mihaela.macarie01@yahoo.comMihaela Macarie [email protected] Data 19 ianuarie 2020 20:01:32
Problema Subsir crescator maximal Scor 70
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.71 kb
#include <iostream>
#include <fstream>

using namespace std;

ifstream x("scmax.in");
ofstream y("scmax.out");

int n,i,v[100002],l[100002],pred[100002],imax,j;

void afisare(int k)
{
    if(pred[k]!=-1)
        afisare(pred[k]),y<<v[k]<<" ";
}

int main()
{
    x>>n;
    pred[0]=-1;
    for(i=1;i<=n;i++)
    {
        x>>v[i];
        l[i]=1;
        pred[i]=0;
        for(j=1;j<i;j++)
        {
            if(v[i]>v[j] && l[i]<l[j]+1)
            {
                l[i]=l[j]+1;
                pred[i]=j;
                if(l[i]>l[imax])
                    imax=i;
            }
        }
    }
    y<<l[imax]<<'\n';
    afisare(imax);
    x.close();
    y.close();
    return 0;
}