Cod sursa(job #1371021)

Utilizator svasileVasile Sebastian svasile Data 3 martie 2015 18:41:07
Problema Secv Scor 20
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.85 kb
#include <iostream>
#include<fstream>
using namespace std;
ifstream f("secv.in");
ofstream g("secv.out");
int main()
{
   long long int a[5000],b[5000];
    int n,i,j,m=0,fin=0,inceput=1,nr=0;
    f>>n;
    for(i=1;i<=n;i++)
        {f>>a[i];
        b[i]=1;
        }
    for(i=1;i<=n;i++)
        for(j=i-1;j>0;j--)
        {
            if(a[i]>a[j])
                b[i]=max(b[i],b[j]+1);
            if(b[i]>m)
                m=b[i];
        }
    for(i=n;i>n;i--)
    {
        if(b[i]==m)
        {
            fin=i;
            break;
        }
    }
    i=fin;
    for(j=fin-1;j>0;j--)
    {
        if(b[j]==b[i]-1)
        {
            i=j;
            m--;
            inceput=i;
        }
    }
    for(i=inceput;i<=fin;i++)
        nr++;
    if(nr==0)
        g<<-1;
    else
        g<<nr;
    return 0;
}