Cod sursa(job #1714163)

Utilizator anisca22Ana Baltaretu anisca22 Data 7 iunie 2016 18:14:29
Problema Subsir crescator maximal Scor 45
Compilator cpp Status done
Runda Arhiva educationala Marime 0.83 kb
#include <iostream>
#include <fstream>
using namespace std;
ifstream fin("scmax.in");
ofstream fout("scmax.out");
long long v[100001],lg[100001],a[100001];
int n,rez,pf,i,j;
int main()
{
    fin>>n;
    for(i=1;i<=n;i++)
        {
            lg[i]=1;
            fin>>v[i];
            for(j=1;j<i;j++)
                {
                    if(v[i]>v[j] && lg[i]<lg[j]+1)
                        lg[i]=lg[j]+1;
                    if(lg[i]>rez)
                        {rez=lg[i];
                        pf=i;
                        }
                }
        }
    fout<<rez<<endl;
    int nr=v[pf];
    a[1]=nr;
    int j;
    for(i=pf,j=2;i>0;i--)
        if(v[i]<nr){
            nr=v[i];
            a[j]=v[i];
            j++;
        }
    for(j=j-1;j>0;j--)
        fout<<a[j]<<" ";

    return 0;
}