Pagini recente » Cod sursa (job #2290851) | Cod sursa (job #1340266) | Cod sursa (job #1278885) | Cod sursa (job #1333222) | Cod sursa (job #1130730)
#include <fstream>
#include <algorithm>
using namespace std;
ifstream f("secv.in");
ofstream g("secv.out");
int v[5005],sep[5005],i,k,n;
int main()
{
f>>n;
for (i=1;i<=n;i++)
{
f>>v[i];
sep[i]=v[i];
}
sort(sep+1,sep+n+1);
k=1;
for (i=2;i<=n;i++)
{
if (sep[k]!=sep[i]) sep[++k]=sep[i];
}
register int ok=0,j,x,minim=(1<<30),secv,okf=0;
for (i=n;i>=k-1;i--)
{
if (v[i]==sep[k])
{
ok=1;
for (j=i,x=k;j>0;j--)
{
if (v[j]==sep[x])
{
x--;
if (x==0){ok=0; break;}
}
}
if (ok==0)
{
okf=1;
secv=i-j+1;
if (secv<minim) minim=secv;
}
}
}
if (okf) g<<minim;
else g<<"-1";
return 0;
}