Cod sursa(job #1039914)

Utilizator piticutzu15Covaciu Andrei piticutzu15 Data 23 noiembrie 2013 18:47:56
Problema Subsir 2 Scor 12
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.75 kb
#include <fstream>
using namespace std;
int L[100];
int main()
{
    ifstream f("subsir2.in");
    ofstream g("subsir2.out");
    int a[5001];
    int i,j,n,lmax=0,v[5001],sol[5001],k=0,lmin=0;
    f>>n;
    for(i=0;i<n;i++)
        f>>a[i];
    for(i=0;i<n;i++)
    {
        for(j=0;j<i;j++)
            if(a[i]>a[j]&&L[i]<L[j])
            {
                L[i]=L[j];
                v[i]=j;
            }
        L[i]++;
        if(L[i]==1)
            v[i]=-1;
        if(L[i]>lmax)
        {
            lmax=L[i];
            k=i;
        }
    }
    for(j=k,i=0;j!=-1;j=v[j],i++)
        sol[i]=j+1,lmin++;
    g<<lmin<<endl;
    for(j=i-1;j>=0;j--)
        g<<sol[j]<<' ';
    f.close();
    g.close();
    return 0;
}