Pagini recente » Cod sursa (job #2659840) | Cod sursa (job #3288576) | Cod sursa (job #2311993) | Cod sursa (job #310646) | Cod sursa (job #2657855)
#include <cstdio>
#include <algorithm>
#define Nmax 5005
#define INF 2000000000
using namespace std;
int a[Nmax], b[Nmax], N, sol = INF;
int main()
{
int i, j, K, ind;
freopen("secv.in", "r", stdin);
freopen("secv.out", "w", stdout);
scanf("%d", &N);
for (i = 1; i <= N; ++i)
{
scanf("%d", &a[i]);
b[i] = a[i];
}
sort(b + 1, b + N + 1);
K = 1;
for (i = 2; i <= N; ++i)
if (b[i] != b[i - 1])
b[++K] = b[i];
for (i = 1; i <= N; ++i)
{
ind = 1;
j = i;
while (j <= N)
{
if (a[j] == b[ind])
++ind;
if (ind == K + 1)
{
sol = min(sol, j - i + 1);
break;
}
++j;
}
}
if (sol == INF)
printf("-1\n");
else
printf("%d\n", sol);
return 0;
}