Pagini recente » Cod sursa (job #2722605) | Cod sursa (job #1607701) | Cod sursa (job #1127303) | Cod sursa (job #3170483) | Cod sursa (job #254249)
Cod sursa(job #254249)
#include<stdio.h>
int a[6000], lung, i, j, min, max, n, cnt;
int main(){
freopen("secv.in","r",stdin);
freopen("secv.out","w",stdout);
scanf("%d",&n);
max = 0; lung = min = 2000000000;
for (i = 1; i <= n; i++){
scanf("%d",&a[i]);
if (a[i]> max) max = a[i];
if (a[i]< min) min = a[i];
}
for (i = 1; i <= n; i++)
if (a[i]==min){
cnt = min+1;
for (j=i+1;j<=n && cnt <= max ;j++)
if (a[j] == cnt) cnt++;
if (j-i < lung && cnt == max+1)
lung = j-i;
}
printf("%d\n",(lung < 200000000 ? lung : -1));
return 0;
}