Pagini recente » Cod sursa (job #2878860) | Borderou de evaluare (job #1330784) | Cod sursa (job #3234674) | Cod sursa (job #1544026) | Cod sursa (job #2646986)
#include <bits/stdc++.h>
using namespace std;
#define NMAX 5005
int n,v[NMAX],ans;
set<int> S;
vector<int> Q;
int main()
{
freopen("secv.in","r",stdin);
freopen("secv.out","w",stdout);
cin >> n;
for (int i=1;i<=n;i++) cin >> v[i], S.insert(v[i]);
for (auto it : S){
Q.push_back(it);
}
int crt = 0, ans = 1e9;
for (int i=1;i<=n;i++){
crt = 0;
for (int j=i;j<=n && crt < Q.size(); j++){
if (v[j] == Q[crt]){
crt++;
if (crt >= Q.size()){
ans = min(ans, j-i+1);
break;
}
}
}
}
if (ans > 10000)
cout << "-1\n";
else
cout << ans << '\n';
return 0;
}