Pagini recente » Cod sursa (job #1204720) | Cod sursa (job #3207595) | Cod sursa (job #507161) | Cod sursa (job #1498725) | Cod sursa (job #587077)
Cod sursa(job #587077)
#include <cstdio>
#include <algorithm>
using namespace std;
int v[5001],c[5001];
int main()
{
int n,m=0,i,ind,j,sol=10000;
freopen("secv.in","r",stdin);
freopen("secv.out","w",stdout);
scanf("%d\n",&n);
for (i=1;i<=n;++i)
{
scanf("%d ",&v[i]);
c[i]=v[i];
}
sort(c+1,c+n+1);
c[0]=-1;
for (i=1;i<=n;++i)
if (c[i]!=c[i-1])
{
++m;
c[m]=c[i];
}
for (i=1;i<=n-m+1;++i)
{
ind=i;
for (j=1;j<=m&&ind<=n;)
{
while ((v[ind]!=c[j])&&(ind<=n))
++ind;
while ((v[ind]==c[j])&&(j<=m)&&(ind<=n))
{
++j;
++ind;
}
}
if ((j==m+1)&&(ind-i<sol))
sol=ind-i;
}
if (sol==10000) sol=-1;
printf("%d",sol);
return 0;
}