Pagini recente » Borderou de evaluare (job #288137) | Cod sursa (job #716864)
Cod sursa(job #716864)
#include<fstream>
#include<algorithm>
using namespace std;
ifstream f("secv.in");
ofstream g("secv.out");
int i,j,x,n,lmin,nr,a[5001],b[5001];
int main()
{f>>n;
for(i=1;i<=n;++i)
f>>a[i],b[i]=a[i];
sort(&b[1],&b[n+1]);
nr=1;
lmin=100000;
for(i=2;i<=n;++i)
if(b[i]!=b[i-1])
++nr,b[nr]=b[i];
for(i=1;i<=n;++i)
{x=1;
for(j=i;j<=n;++j)
if(a[j]==b[x])
{++x;
if(x==nr+1)
break;
}
if(x==nr+1&&j-i+1<lmin)
lmin=j-i+1;
}
if(lmin==100000)
g<<"-1\n";
else
g<<lmin<<'\n';
f.close();
g.close();
return 0;
}