Pagini recente » Cod sursa (job #1884847) | Cod sursa (job #3251674) | Cod sursa (job #2802069) | Cod sursa (job #3290887) | Cod sursa (job #111072)
Cod sursa(job #111072)
#include<stdio.h>
long n,m,v[5000],t[5000],c[5000],rez=1000000000;
int main()
{
long i,j,k,x;
freopen("secv.in","r",stdin);
scanf("%ld",&n);
for(i=0;i<n;i++)
{
scanf("%ld",v+i);
t[i]=v[i];
}
for(i=0;i<n;i++)
for(j=i+1;j<n;j++)
if(t[i]>t[j])
x=t[i],t[i]=t[j],t[j]=x;
c[0]=t[0];m=1;
for(i=1;i<n;i++)
if(t[i]!=t[i-1])
c[m++]=t[i];
for(i=n-1;i>=0;i--)
{
if(v[i]==c[m-1])
{
for(k=i,j=m-2;j>=0;j--)
{
while(k>=0&&v[k]!=c[j])
k--;
if(k<0)
break;
}
if(j==-1&&rez>i-k+1)
rez=i-k+1;
}
}
freopen("secv.out","w",stdout);
printf("%ld\n",rez==1000000000?-1:rez);
return 0;
}