Cod sursa(job #2499988)

Utilizator CatalinaPHOVornicu Catalina-Cristina CatalinaPHO Data 27 noiembrie 2019 08:29:07
Problema Subsir crescator maximal Scor 70
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.66 kb
#include <fstream>
using namespace std;
ifstream f("scmax.in");
ofstream g("scmax.out");
long long v[100100],l[100100],n,i,k,maxi,t;
int main()
{
    f>>n;
    for(i=1;i<=n;i++)
        f>>v[i];
    l[n]=1;
    for(k=n-1;k>=1;k--)
    {
        maxi=0;
        for(i=k+1;i<=n;i++)
            if(v[i]>v[k]&&l[i]>maxi)
            maxi=l[i];
        l[k]=1+maxi;
    }
    maxi=l[i];
    t=1;
    for(k=1;k<=n;k++)
        if(l[k]>maxi)
    {
        maxi=l[k];
        t=k;
    }
    g<<maxi<<"\n";
    g<<v[t]<<" ";
    for(i=t+1;i<=n;i++)
        if(v[i]>v[t]&&l[i]==maxi-1)
    {
        g<<v[i]<<" ";
        maxi--;
    }
    return 0;
}