Pagini recente » Cod sursa (job #694270) | Cod sursa (job #2415208) | Cod sursa (job #757959) | Cod sursa (job #376791) | Cod sursa (job #1691306)
#include <fstream>
using namespace std;
ifstream fin("secv.in");
ofstream fout("secv.out");
long n,m,v[5000],t[5000],c[5000],rez=2000000000;
int main()
{
long i,j,k,x;
fin>>n;
for(i=0;i<n;i++){fin>>v[i];t[i]=v[i];}
for(i=0;i<n;i++)
{for(j=i+1;j<n;j++)
if(t[i]>t[j]){x=t[i];t[i]=t[j];t[j]=x;}
}
c[0]=t[0];m=1;
for(i=1;i<n;i++)
if(t[i]!=t[i-1])c[m++]=t[i];
for(i=n-1;i>=0;i--)
{
if(v[i]==c[m-1])
{
for(k=i,j=m-2;j>=0;j--)
{
while(k>=0 && v[k]!=c[j])k--;
if(k<0)break;
}
if(j==-1 && rez>i-k+1)rez=i-k+1;
}
}
if(rez==2000000000)fout<<-1;
else fout<<rez;
return 0;
}