Cod sursa(job #2035955)

Utilizator TheoPopPopescu Theodor TheoPop Data 9 octombrie 2017 23:38:28
Problema Subsir crescator maximal Scor 70
Compilator cpp Status done
Runda Arhiva educationala Marime 0.57 kb
#include <fstream>

using namespace std;
ifstream f("scmax.in");
ofstream g("scmax.out");
int n,ma,poz,i,k,v[100005],l[100005],p[100005],j;
int main()
{f>>n;
for(i=1;i<=n;++i)
    f>>v[i];
    p[n]=-1;
    l[n]=1;
    ma=1;
    poz=n;
    for(i=n-1;i>=1;--i)
    {p[i]=-1;
    l[i]=1;
    for(j=i+1;j<=n;++j)
        if(v[i]<v[j] && l[i]<l[j]+1)
    {l[i]=l[j]+1;
    p[i]=j;
    if(l[i]>ma)
    {ma=l[i];
    poz=i;

    }

    }


    }
    g<<ma<<'\n';
    k=poz;
    while(k!=-1)
    {g<<v[k]<<' ';
    k=p[k];

    }

    return 0;
}