Cod sursa(job #2063199)

Utilizator nicholascantarNicholas David Cantar Gogitidze nicholascantar Data 11 noiembrie 2017 10:10:13
Problema Subsir 2 Scor 52
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.75 kb
#include <fstream>

using namespace std;
int lmax,v[5010],l[5010],min1,max1,n,i,j,ct,min2;
int main()
{
    ifstream fin ("subsir2.in");
    ofstream fout ("subsir2.out");
    fin>>n;
    for(i=1;i<=n;i++)
        fin>>v[i];

    l[n]=1;
    for(i=n-1;i>=1;i--)
    {
        ct=0;
        min2=1000001;
        for(j=i+1;j<=n;j++)
        {
            if(v[j]>=v[i]&&v[j]<=min2) {min2=v[j];ct=j;}
        }
         l[i]=l[ct]+1;
        if(l[i]>max1) max1=l[i];
    }
    /*for(i=1;i<=n;i++)
        fout<<l[i]<<" ";*/
    fout<<max1<<'\n';
    while(max1)
    {
        min1=1000001;
        for(i=1;i<=n;i++)
        if(l[i]==max1&&v[i]<=min1) {min1=v[i];ct=i;}
        fout<<ct<<" ";
        max1--;
    }
    return 0;
}