Pagini recente » Cod sursa (job #93547) | Cod sursa (job #634784) | Cod sursa (job #2802451) | Cod sursa (job #2077669) | Cod sursa (job #2834206)
#include <iostream>
#include <fstream>
using namespace std;
ifstream fin("secv.in");
ofstream fout("secv.out");
int main()
{
long long x[5001],minn,mini,maxn,xm[10];
int n;
fin>>n;
fin>>x[1];
minn=x[1];
maxn=x[1];
for(int i=2;i<=n;i++){
fin>>x[i];
if(x[i]<minn) minn=x[i];
if(x[i]>maxn) maxn=x[i];
}
int pos=1;
for(int i=1;i<=n;i++){
if(x[i]==minn){
xm[pos]=i;
pos++;
}
}
int len,lenm=-1,test, nn;
for(int i=1;i<pos;i++){
mini=xm[i];
len=0;
nn=x[mini]+1;
test=1;
while(nn!=maxn+1 && test==1){
test=0;
for(int i=mini+1;i<=n && test==0;i++){
if(x[i]==nn){
test=1;
len=len+(i-mini);
mini=i;
nn++;
}
}
}
if((len+1<lenm || lenm==-1) && test==1) lenm=len+1;
}
fout<<lenm;
return 0;
}