Pagini recente » Cod sursa (job #531474) | Cod sursa (job #1893758) | Cod sursa (job #383057) | Cod sursa (job #218233) | Cod sursa (job #1707371)
#include <cstdio>
#include <algorithm>
using namespace std;
#define MAXN 5001
int v[MAXN+1],v1[MAXN+1];
int main(){
FILE*fi,*fout;
int i,n,maxv,minim,j,m,poz;
fi=fopen("secv.in" ,"r");
fout=fopen("secv.out" ,"w");
fscanf(fi,"%d" ,&n);
maxv=m=1;
for(i=1;i<=n;i++){
fscanf(fi,"%d" ,&v[i]);
if(v[i]>maxv)
maxv=v[i];
j=m-1;
while(j>0&&v1[j]!=v[i])
j--;
if(j==0)
v1[m++]=v[i];
}
sort(v1,v1+m);
minim=MAXN;
for(i=1;i<=n;i++)
if(v[i]==maxv){
j=m-1;
poz=i;
while(poz>0&&j>0){
if(v1[j]==v[poz])
j--;
poz--;
}
if(j==0&&minim>i-poz)
minim=i-poz;
}
if(minim==MAXN)
minim=-1;
fprintf(fout,"%d" ,minim);
fclose(fi);
fclose(fout);
return 0;
}