Cod sursa(job #1371339)

Utilizator svasileVasile Sebastian svasile Data 3 martie 2015 20:45:11
Problema Secv Scor 10
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.83 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=1;i<=n;i++)
    {
        if(b[i]==m)
        {
            fin=i;
            break;
        }
    }
i=fin;j=fin-1;
while(j>0)
{
    if(b[i]-1==b[j] && a[i]>a[j])
    {
        i=j;
     inceput=i;

    }
    j--;
}



    for(i=inceput;i<=fin;i++)
        nr++;
    if(nr==0)
        g<<-1;
    else
        g<<nr;
    return 0;
}