Pagini recente » Cod sursa (job #1936154) | Cod sursa (job #223351) | Cod sursa (job #1091388) | Cod sursa (job #1566226) | Cod sursa (job #1121464)
#include <cstdio>
#include <algorithm>
#define DIM 5010
using namespace std;
const int INF=2000000010;
int n, i, j, k, nr, minim=INF, poz, minim2=INF;
int v[DIM], s[DIM], a[DIM];
int main(){
freopen("secv.in", "r", stdin);
freopen("secv.out", "w", stdout);
scanf("%d", &n);
for(i=1; i<=n; i++)
{
scanf("%d", &v[i]);
if(v[i]<minim2)
minim2=v[i];
s[i]=v[i];
}
sort(s+1, s+n+1);
nr=1;
a[1]=s[1];
for(i=2; i<=n; i++)
if(s[i]!=s[i-1])
a[++nr]=s[i];
for(k=1; k<=n; k++)
if(v[k]==minim2)
{
poz=k;
for(i=2; i<=nr && j<=n; i++)
for(j=poz+1; j<=n; j++)
if(v[j]==a[i])
{
poz=j;
break;
}
if(i==nr+1)
if(j-k+1<minim)
minim=j-k+1;
}
if(minim==INF)
printf("-1\n");
else
printf("%d\n", minim);
return 0;
}