Cod sursa(job #2065372)

Utilizator CezShreddRBretan Cezar CezShreddR Data 13 noiembrie 2017 18:51:53
Problema Subsir 2 Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.72 kb
#include <fstream>

using namespace std;
ifstream f ("subsir2.in");
ofstream g ("subsir2.out");
int v[101],dp[101],p[101],rez[11];

int main()
{
    int i,j,n,lmax,poz,dim,macs;
    f>>n;
    for(i=1;i<=n;i++)
        f>>v[i];
    dp[1]=1;
    for(i=2;i<=n;i++)
    {
        lmax=0;
        poz=0;
        for(j=1;j<=i-1;j++)
            if(v[j]<v[i] && lmax<dp[j]){poz=j;lmax=dp[j];}
        dp[i]=lmax+1;
        p[i]=poz;
    }
    macs=-1;
    poz=0;
    for(i=1;i<=n;i++)
        if(dp[i]>macs){macs=dp[i];poz=i;}
    dim=0;
    g<<macs<<'\n';
    for(i=poz;i!=0;i=p[i])
    {
        dim++;
        rez[dim]=v[i];
    }

    for(i=dim;i!=0;i--)
        g<<rez[i]<<' ';

    return 0;
}