Pagini recente » Cod sursa (job #549812) | Cod sursa (job #2836964) | Cod sursa (job #2866186) | Cod sursa (job #1665140) | Cod sursa (job #1482936)
#include<bits/stdc++.h>
using namespace std;
ifstream fin("secv.in");
ofstream fout("secv.out");
#define MAXN 5005
int n, V[MAXN];
bitset<MAXN> used;
vector<int> vals;
int main(){
fin>>n;
int i, j, index, dist, howMany, miN=(1<<30);
if(n==1){
fout<<"1";
return 0;
}
vals.push_back(0);
for(i=1;i<=n;++i){
fin>>V[i];
if(!used[V[i]]){
used[V[i]]=1;
vals.push_back(V[i]);
}
}
howMany=vals.size()-1;
sort(vals.begin(),vals.end());
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==howMany+1)
miN=min(miN, dist);
}
miN==(1<<30)?fout<<"-1":fout<<miN;
return 0;
}