Cod sursa(job #1538103)

Utilizator ris99Istrate Ruxandra ris99 Data 28 noiembrie 2015 15:07:00
Problema Subsir crescator maximal Scor 70
Compilator cpp Status done
Runda Arhiva educationala Marime 0.58 kb
#include <fstream>

using namespace std;
int n, a[100003], max1, k, l[100003], nr;
ifstream f("scmax.in");
ofstream g("scmax.out");

int main()
{ int i,poz,j;
  f>>n;
  for(i=1;i<=n;i++)
  f>>a[i];
  l[n]=1;
  for(i=n-1;i>=1;i--)
  { max1=0;
    for(j=i+1;j<=n;j++)
        if(a[j]>a[i]&&l[j]>max1) max1=l[j];
    l[i]=max1+1;
  }
  max1=0;
  for(i=1;i<=n;i++)
  if(l[i]>max1){max1=l[i];poz=i;}
  g<<max1<<endl;
  while(max1>0)
  { g<<a[poz]<<' ';
  max1--;
  for(i=poz+1;i<=n;i++)
  if(a[i]>a[poz]&&l[i]==max1)
  {poz=i;
   break;
  }

  }
   return 0;

}