Cod sursa(job #948215)

Utilizator dumitra_cristianDumitra Cristian dumitra_cristian Data 9 mai 2013 18:19:25
Problema Subsir crescator maximal Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.63 kb
#include <iostream>
#include <fstream>
#include <cstdio>
using namespace std;
ifstream f("scmax1.in");
long mx,n,M,a[10000],l[100000],m,p,ult;

int main()
{ int i,j;
  f>>n;
   for(i=1;i<=n;i++) f>>a[i];
  for(i=n;i>=1;i--)
   {M=0;
     for(j=i+1;j<=n;j++)
       if(M<l[j]&&a[i]<a[j]) M=l[j];
     l[i]=M+1;
     if(l[i]>m) {m=l[i];
                 p=i;}
   }
   mx=l[1];
   for(j=2;j<=n;j++)
     if(l[j]>mx) mx=l[j];
   cout<<mx<<endl;
  cout<<a[p]<<" "; ult=a[p];
  m--;
  for(i=p+1;i<=n;i++)
   if(a[i]>ult&&m==l[i])
     {cout<<a[i]<<" ";
      m--;
      ult=a[i];
     }
  f.close();
    return 0;
}