Pagini recente » Cod sursa (job #700272) | Cod sursa (job #1061223) | Cod sursa (job #323003) | Cod sursa (job #2656607) | Cod sursa (job #2786882)
#include<iostream>
#include<fstream>
using namespace std;
long n,m,v[5000],t[5000],c[5000],rez=1000000000;
main()
{
int i,j,k,x;
ifstream f("secv.in");
ofstream fout("secv.out");
f>>n;
for(i=0;i<n;i++)
{
f>>v[i];
t[i]=v[i];
}
for(i=0;i<n-1;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;
}
}
if(rez==1000000000)
fout<<-1;
else
fout<<rez;
}