Pagini recente » Diferente pentru utilizator/zloteanu.adrian intre reviziile 16 si 15 | Atasamentele paginii Profil raluca_aida | Monitorul de evaluare | Monitorul de evaluare | Cod sursa (job #528081)
Cod sursa(job #528081)
#include<fstream>
#include<algorithm>
using namespace std;
long i,j,n,m,a[50001],b[50001],c[50001],poz,rez=1000000000;
int main()
{
ifstream f("secv.in");
ofstream g("secv.out");
f>>n;
for(i=0;i<n;i++)
f>>a[i],b[i]=a[i];
sort(b,b+n-1);
c[0]=b[0];
m=1;
for(i=1;i<n;i++)
if(b[i]!=b[i-1])
c[m++]=b[i];
for(i=n-1;i>=0;i--)
{
if(a[i]==c[m-1])
{
for(poz=i,j=m-2;j>=0;j--)
{
while(poz>=0&&a[poz]!=c[j])
poz--;
if(poz<0)
break;
}
if(j==-1&&rez>i-poz+1)
rez=i-poz+1;
}
}
if(rez==1000000000)
g<<-1;
else
g<<rez;
return 0;
}