Pagini recente » Cod sursa (job #1353309) | Cod sursa (job #537757) | Cod sursa (job #1062174) | Cod sursa (job #2188315) | Cod sursa (job #2402877)
#include <bits/stdc++.h>
using namespace std;
ifstream fin("secv.in");
ofstream fout("secv.out");
int n, k, a[5005], b[5005];
int Len(int p)
{
int i,j = 1;
for (i = p; i <= n; i++)
{
if (a[i] == b[j]) j++;
if (j > k) return i - p + 1;
}
return n + 1;
}
int main()
{
int i, lmin;
fin >> n;
for(i = 1;i <= n;i++)
{
fin >> a[i];
b[i] = a[i];
}
sort(b + 1, b + n + 1);
k = 1;
for(i = 2;i <= n;i++)
if(b[k] != b[i])
b[++k] = b[i];
lmin = n + 1;
for(i = 1;i <= n;i++)
if (a[i] == b[1])
lmin = min(lmin, Len(i));
if(lmin == n + 1)
fout << "-1";
else
fout << lmin;
return 0;
}