Pagini recente » Cod sursa (job #1555533) | Cod sursa (job #1402673) | Cod sursa (job #1162637) | Cod sursa (job #1811425) | Cod sursa (job #2172118)
#include <fstream>
#include <algorithm>
using namespace std;
ifstream fin ("secv.in");
ofstream fout ("secv.out");
int n, m;
int a[5001], b[5001], c[5001];
int Lungime (int p)
{
int i, j;
j = 1;
for (i = p; i <= n; i++)
{
if (a[i]==b[j])
j++;
if (j>m)
return i-p+1;
}
return 1E6;
}
int main()
{
int i, L;
fin >> n;
for (i=1; i<=n; i++)
{
fin >> a[i];
c[i]=a[i];
}
sort (c+1, c+n+1);
b[1]=c[1];
m=1;
for (i=2; i<=n; i++)
if (c[i]!=c[i-1]) b[++m]=c[i];
L = 1E6;
for (i=1; i<=n-m+1; i++)
{
if (b[1]==a[i])
L=min(L, Lungime(i));
}
if (L==1E6) fout << -1;
else fout << L;
return 0;
}