Cod sursa(job #1294404)

Utilizator sorincusmareIacob Sorin sorincusmare Data 17 decembrie 2014 15:20:59
Problema Subsir crescator maximal Scor 10
Compilator cpp Status done
Runda Arhiva educationala Marime 0.53 kb
#include <fstream>

using namespace std;
ifstream f("scmax.in");
ofstream g("scmax.out");
int v[100001],lung[100001],pred[100001];
void subsir(int p){
  if(pred[p]!=0)
   subsir(pred[p]);
  g<<v[p]<<" ";
}
int main()
{
  int n,i,j,maxim,lmax;
  f>>n;
  for(i=1;i<=n;i++)
   f>>v[i];
  lung[1]=1;
  for(i=2;i<=n;i++)
  {
    lmax=0;
    for(j=1;j<i;j++)
      if(v[i]>v[j])
        if(lung[j]>lmax){
          lmax=lung[j];
          pred[i]=j;
          maxim=i;
          }
    lung[i]=1+lmax;

  }
   g<<lung[maxim]<<"\n";
   subsir (maxim);
}