Cod sursa(job #2153560)

Utilizator iarinatudorTudor Iarina Maria iarinatudor Data 6 martie 2018 12:06:23
Problema Subsir crescator maximal Scor 40
Compilator cpp Status done
Runda Arhiva educationala Marime 0.75 kb
#include <iostream>
#include <fstream>

using namespace std;
int n;
int a[100001];
int b[100001];
int c[100001];
int p=1;
ifstream fin("scmax.in");
ofstream fout("scmax.out");
void chestie()
{
    for(int i=2; i<=n; i++)
       {
        int max=0;
        c[i]=-1;
        for(int j=1; j<i; j++)
            if(a[i]>a[j]&&b[j]>max)
            {
                max=b[j];
                c[i]=j;

            }
           b[i]=max+1;
           if(b[i]>b[p])
           p=i;

    }
}
void af(int d)
{
    if(c[d]==-1) return;
    af(c[d]); fout<<a[d]<<" ";
}
int main()
{
  fin>>n;
   for(int i=1; i<=n; i++)
        fin>>a[i];
   b[1]=1;
   c[0]=-1;
   chestie();
   fout<<b[p]<<"\n";
   af(p);


    return 0;
}