Pagini recente » Cod sursa (job #2536889) | Cod sursa (job #2689552) | Cod sursa (job #2217637) | Cod sursa (job #316061) | Cod sursa (job #2402880)
#include <bits/stdc++.h>
#define N 5001
using namespace std;
ifstream fin("secv.in");
ofstream fout("secv.out");
int a[5005],n;
int b[5005],k;
int vasile(int p)
{
int q,i,j;
i=p;
j=1;
for (i=p; i<=n; i++)
{
if (a[i]==b[j])
j++;
if (j>k) return i-p+1;
}
return N;
}
int main()
{
int i,j,x,mi=INT_MAX;
k=1;
fin >> n;
for (i=1; i<=n; i++)
{
fin >> a[i];
b[i]=a[i];
}
sort (b+1, b+n+1);
for (i=2; i<=n; i++)
{
if (b[k]!=b[i])
b[++k]=b[i];
}
for (i=1; i<=n; i++)
{
if (a[i]==b[1])
{
x=vasile(i);
if (vasile(i)!=N)
mi=min(mi,x);
}
}
if (mi==N)
fout << -1;
else
fout << mi << "\n";
return 0;
}