Cod sursa(job #1713750)

Utilizator Dragos2811Rebegea Dragos Dragos2811 Data 6 iunie 2016 15:22:51
Problema Subsir crescator maximal Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.57 kb
#include <iostream>
#include <fstream>
using namespace std;
ifstream f("scmax.in");
ofstream g("scmax.out");
int n,x,v[100001],q[100001],p[100001],i,j,m;
void afis(int n, int m)
{
    while(p[n]!=m)n--;
    if(m>1)afis(n-1,m-1);
    g<<v[n]<<" ";
}
int main()
{
    f>>n;
    for(i=1; i<=n; i++){ f>>v[i],x=v[i];
                         j=1;
                         while(x>q[j] && j<=m)j++;
                         q[j]=x,p[i]=j;
                         m=max(m,j);
                       }
    g<<m<<"\n";
    afis(n,m);
    g<<"\n";
    return 0;
}