Cod sursa(job #1294398)

Utilizator sorincusmareIacob Sorin sorincusmare Data 17 decembrie 2014 15:15:05
Problema Subsir crescator maximal Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.5 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;
          }
    lung[i]=1+lmax;
    maxim=i;
  }
   subsir (maxim);
}