Cod sursa(job #1049352)

Utilizator andi23roscaRosca Andrei andi23rosca Data 7 decembrie 2013 11:36:44
Problema Subsir crescator maximal Scor 40
Compilator cpp Status done
Runda Arhiva educationala Marime 0.8 kb
#include <iostream>
#include <fstream>
using namespace std;
int main()
{
    ifstream f("scmax.in");
    ofstream g("scmax.out");
    int v[1000],b[1000],x[1000],i,j,n,max,m=0,z;
    f>>n;
    for(i=1;i<=n;i++)
    {
        f>>v[i];
    }
    b[1]=1;
    for(i=2;i<=n;i++)
    {
        max=0;
        for(j=i-1;j>=1;j--)
        {
            if(v[j]<v[i])
            {
                if(b[j]>max)
                {
                    max=b[j];
                }
            }
        }
        b[i]=max+1;
        if(m<b[i]) m=b[i];
    }
    g<<m<<endl;
    i=n;
    z=m;
    while(m>0)
    {
        if(b[i]==m)
        {
            x[m]=v[i];
            m--;
        }
        i--;
    }
    for(i=1;i<=z;i++)
    {
        g<<x[i]<<" ";
    }
    return 0;
}