Cod sursa(job #556606)

Utilizator uaraRoventa Robert uara Data 16 martie 2011 11:10:35
Problema Subsir crescator maximal Scor 10
Compilator cpp Status done
Runda Arhiva educationala Marime 0.73 kb
#include<iostream>
#include<fstream>

using namespace std;
fstream f("scmax.in",ios::in);
fstream g("scmax.out",ios::out);
long a[100000],n,i,j,m;
int main()
{
    long l[100000],poz[100000];
    f>>n;
     for(i=1;i<=n;i++)
         f>>a[i];
       l[n]=1;poz[n]=-1; m=n;
     for(i=n-1;i>0;i--)
        {
            l[i]=1;poz[1]=-1;;
              for(j=i+1;j<=n;j++)

                  if(l[i]<l[j]+1 && a[i]<a[j])
                  {
                      l[i]=1+l[j];
                      poz[i]=j;
                  }
                if(l[i]>l[m]) m=i;
        }
    g<<l[m]<<" ";
    i=m;
    while(i!=-1)
    {
        g<<a[i]<<" ";
        i=poz[i];
    }
    f.close();
    g.close();
    return 0;
}