Cod sursa(job #1254783)

Utilizator codi22FMI Condrea Florin codi22 Data 3 noiembrie 2014 14:49:03
Problema Subsir crescator maximal Scor 65
Compilator cpp Status done
Runda Arhiva educationala Marime 0.63 kb
#include <iostream>
#include <cstdio>
using namespace std;
int s,d,m,a,V[100000],P[100000],n,lungime;
int main()
{
    freopen("scmax.in","r",stdin);
    freopen("scmax.out","w",stdout);
    scanf("%ld",&n);
    for (int i=1;i<=n;i++)
    {
          scanf("%d",&a);
         //inserare
         s=1;
         d=lungime+1;
         while (s!=d)
         {
             m=(s+d)/2;
             if (V[m]<a) s=m+1;
             else d=m;
         }
         if (d==lungime+1) {lungime++; V[lungime]=a;}
         else {V[d]=a;}

    }
    printf("%d\n",lungime);
  for (int i=1;i<=lungime;i++)
    printf("%d ",V[i]);
}