Cod sursa(job #532215)

Utilizator OviTzu24Carabian Ovidiu OviTzu24 Data 11 februarie 2011 08:34:36
Problema Subsir crescator maximal Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.71 kb
#include<iostream>
#include<fstream.h>
using namespace std;
long a[100000],n,l[100000],poz[100000],i,j,pozmax;
int main()
{
    long max;
    ifstream f("scmax.in");
    f>>n;
    for(i=1;i<=n;I++)
    f>>a[i];
    f.close();
    max=-1;
    pozmax=1;
    l[n]=1; 
    poz[n]=-1;
    for(i=n-1;i>=1;i--)
    {
        l[i]=1;
        poz[i]=-1;
        if(a[i]<a[j]&&l[i]<1+l[j])
        {
            l[i]=1+l[j];
            poz[i]=j;
            if(l[i]>max)
            {
                max=l[i];
                pozmax=i;
            }
        }
    }
    ofstream g("scmax.out");
    g<<max<<"\n";
    for(i=pozmax;i!=-1;i=poz[i])
    g<<a[i]<<" "<<"\n";
    g.close();
    return 0;
}