Pagini recente » Cod sursa (job #473925) | Cod sursa (job #2048987) | Cod sursa (job #3286181) | Cod sursa (job #1558524) | Cod sursa (job #295868)
Cod sursa(job #295868)
#include<fstream.h>
#include<values.h>
ifstream f("secv.in");
ofstream g("secv.out");
long a[5001],min,max,k,i,j,minim=MAXLONG,lung_min,n,ok,ok1,z,y,min_rez,poz_gas;
int main ()
{
f>>n; min=MAXLONG; max=0;
for (i=1; i<=n; i++)
{
f>>a[i];
if (a[i]<min) min=a[i];
if (a[i]>max) max=a[i];
}
lung_min=max-min+1;
for (i=1; i<=n-lung_min+1; i++)
for (j=i+lung_min-1; j<=n; j++)
{
ok=1; min_rez=min;
for (k=min_rez; k<=max; k++)
{
ok1=0;
for (z=i; z<=j; z++)
if (a[z]==k) { ok1=1; poz_gas=z; break; }
if (ok1==0) { ok=0; break; }
else k=poz_gas+1;
}
if (ok==1 && j-i+1<minim) { minim=j-i+1; }
}
if (minim==MAXLONG) g<<"-1";
else g<<minim;
return 0;
}