Cod sursa(job #2087554)

Utilizator Luca19Hritcu Luca Luca19 Data 13 decembrie 2017 20:27:27
Problema Subsir crescator maximal Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.58 kb
#include <fstream>

using namespace std;

ifstream f("scmax.in");
ofstream g("scmax.out");

int v[100005], s[100005], lu[100005], t[100005], n, lmax, i, j, m;

int main()
{
    f>>n;
    for(i=0;i<n;i++)
    {
        f>>v[i];
        j=1;
        while (s[j]<v[i]&&j<=lmax)
            j++;
        s[j]=v[i];
        lu[i]=j;
        if (j>lmax)
            lmax=j;
    }

    g<<lmax<<'\n';
       m=lmax;
    for (i=n;i>=0;i--)
    {
        if (lu[i]==lmax)
            t[lmax--]=v[i];
    }
    for (i=1;i<=m;i++)
        g<<t[i]<<" ";

    return 0;
}