Cod sursa(job #987389)

Utilizator ali97Alina V ali97 Data 20 august 2013 16:13:05
Problema Subsir crescator maximal Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.7 kb
#include <fstream>

using namespace std;

ifstream f("f.in");
ofstream g("g.out");
int a[100],l[100],i,j,lmax,Max,poz,n,x;

int main()
{
    f>>n;
    for(i=1; i<=n; i++)
    {
        f>>a[i];
        l[i]=0;
    }
    l[n]=0;
    for(i=n-1; i>=1; i--)
    {
        Max=0;
        for (j=i+1; j<=n; j++)
            if (a[i]<=a[j] && l[j]>Max)
                Max=l[j];
        l[i]=Max+1;
        if (l[i]>lmax)
        {
            lmax=l[i];
            poz=i;
        }

    }
    g<<lmax<<endl;
    g<<a[poz]<<" ";
    x=a[poz];
    for(i=poz+1; i<=n; i++)
      if (a[i]>x && l[i]==l[i-1]-1)
      {
          x=a[i];
          g<<a[i]<<" ";
      }

    return 0;
}