Cod sursa(job #176801)

Utilizator Sorin_IonutBYSorynyos Sorin_Ionut Data 11 aprilie 2008 18:24:12
Problema Subsir crescator maximal Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.62 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;
 }

 max=l[1];
 t=1;
 for(k=1;k<=n;k++)
  if(l[k]>max)
  {
   max=l[k];
   t=k;
  }
 fout<<"lmax "<<max<<endl<<v[t]<<endl;

 for(i=t+1;i<=n;i++)
  if(v[i]>v[t] && l[i]==max-1)
  {
   fout<<v[i]<<endl;
   max--;
  }
 fout.close();
}