Cod sursa(job #1098853)

Utilizator bidaman98catyTunea Catalin bidaman98caty Data 5 februarie 2014 12:00:32
Problema Subsir crescator maximal Scor 70
Compilator cpp Status done
Runda Arhiva educationala Marime 0.6 kb
#include <fstream>
using namespace std;
ifstream f("scmax.in");
ofstream g("scmax.out");

int N,i,j,v[100002],s[100002],lmax,p;

int main()
{
    f>>N;
    v[0]=200000000;
    s[N]=1;
    for (i=1; i<=N; ++i)
        f>>v[i], s[i]=1;
    for (i=N-1; i>0; --i)
        for (j=i+1; j<=N; ++j)
            if (v[i]<v[j] && s[j]+1>s[i])
            {
                s[i]=s[j]+1;
                if (lmax<s[i])
                    lmax=s[i], p=i;
            }

    g<<lmax<<'\n'<<v[p]<<' ';
    for (i=p; i<=N; ++i)
        if (s[i]==s[p]-1)
            g<<v[i]<<' ', p=i;
    return 0;
}