Cod sursa(job #176806)

Utilizator Sorin_IonutBYSorynyos Sorin_Ionut Data 11 aprilie 2008 18:29:33
Problema Subsir crescator maximal Scor 60
Compilator cpp Status done
Runda Arhiva educationala Marime 0.55 kb
#include <iostream.h>
#include <fstream.h>

ifstream fin("scmax.in");
ofstream fout("scmax.out");

long v[10005];
long l[10005];
long n,k,max,t;

int main()
{
 long i;

  fin>>n;
 for(i=1;i<=n;i++)
  fin>>v[i];
 fin.close();

 l[n]=1;

 for(k=n-1;k>=1;k--)
 {
  max=0;
   for(i=k+1;i<=n;i++)
    if(v[i]>=v[k] && l[i]>max)
     max=l[i];
  l[k]=1+max;
 }

 for(i=1;i<=n;i++)
  if(max<l[i])
   max=l[i];

 fout<<max<<endl;

 for(i=1;i<=n;i++)
  if(l[i]==max)
  {
   fout<<v[i]<<" ";
   max--;
  }

 fout.close();
}