Pagini recente » Cod sursa (job #923413) | Borderou de evaluare (job #2559968) | Cod sursa (job #913128) | Cod sursa (job #324683)
Cod sursa(job #324683)
#include<stdio.h>
#include<algorithm>
using namespace std;
int i,j,n,k,nr, mini=10000,minj,poz;
long long a[5001],sor[5001],sub[5001];
int main()
{ freopen("secv.in","r",stdin);
freopen("secv.out","w",stdout);
scanf("%d",&n);
for(i=1;i<=n;i++) { scanf("%lld",&a[i]);
sor[i]=a[i];
}
sort(sor+1,sor+n+1);
sor[0]=-1;
for(i=1;i<=n;i++) if(sor[i]!=sor[i-1]) sub[++k]=sor[i];
for(i=1;i<=n;i++) { nr=0;
if(a[i]==sub[1]) {
for(j=i,poz=0;j<=n&&nr<k;j++)
{ poz++;
if(a[j]==sub[nr+1]) nr++;
}
if(nr<k&&mini==10000) { printf("-1\n");
fclose(stdin);
fclose(stdout);
return 0;
}
else if(poz<mini&&nr==k){ mini=poz;
}
}
}
printf("%d\n",mini);
fclose(stdin);
fclose(stdout);
return 0;
}