Pagini recente » Cod sursa (job #1153606) | Cod sursa (job #1246689) | Cod sursa (job #1608899) | Cod sursa (job #678645) | Cod sursa (job #1482952)
#include<bits/stdc++.h>
using namespace std;
ifstream fin("secv.in");
ofstream fout("secv.out");
#define MAXN 5005
int n, V[MAXN], vals[MAXN];
bitset<MAXN> used;
int main(){
fin>>n;
int i, j, dist, index, howMany=0, miN=(1<<30);
if(n==1){
fout<<"1";
return 0;
}
for(i=1;i<=n;++i){
fin>>V[i];
if(!used[V[i]]){
used[V[i]]=1;
vals[++howMany]=V[i];
}
}
sort(vals+1, vals+howMany+1);
for(i=1;i<=n-howMany+1;++i)
if(V[i]==vals[1]){
index=2, dist=1;
for(j=i+1;j<=n && index!=howMany+1;++j, ++dist)
if(V[j]==vals[index])
++index;
if(index-1==howMany)
miN=min(miN, dist);
}
miN==(1<<30)?fout<<"-1":fout<<miN;
return 0;
}