Pagini recente » Cod sursa (job #9934) | Cod sursa (job #1973716) | Cod sursa (job #2292361) | Cod sursa (job #2978771) | Cod sursa (job #994698)
Cod sursa(job #994698)
#include <cstdio>
#include <algorithm>
using namespace std;
int n, i, j, k=1, len, MIN=0x3f3f3f3f, pos, v[5001], v_sorted[5001], v_unique[5001];
bool sw;
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]);
v_sorted[i]=v[i];
}
sort(v_sorted+1, v_sorted+n+1);
v_unique[1]=v_sorted[1];
for(i=2; i<=n; ++i)
if(v_sorted[i]!=v_unique[k])
v_unique[++k]=v_sorted[i];
for(i=1; i<=n; ++i)
if(v[i] == v_unique[1])
{
len=1; pos=2;
for(j=i+1; j<=n; ++j)
{
++len;
if(v[j] == v_unique[pos])
++pos;
if(pos == k+1)
{
if(len<MIN)
MIN=len, sw=1;
break;
}
}
}
if(sw)
printf("%d\n", MIN);
else
printf("-1\n");
return 0;
}