Pagini recente » Cod sursa (job #1321947) | Cod sursa (job #67488) | Cod sursa (job #2084192) | Cod sursa (job #3208291) | Cod sursa (job #1371065)
#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>0;i--)
{
if(b[i]==m)
{
fin=i;
break;
}
}
i=fin;
for(j=fin-1;j>0;j--)
{
if(b[j]==b[i]-1 && a[i]>a[j])
{
i=j;
inceput=i;
}
}
for(i=inceput;i<=fin;i++)
nr++;
if(nr==0)
g<<-1;
else
g<<nr;
return 0;
}