Pagini recente » Cod sursa (job #1419668) | Cod sursa (job #444186) | Cod sursa (job #3229623) | Cod sursa (job #2799716) | Cod sursa (job #2923432)
#include <bits/stdc++.h>
using namespace std;
int solve(const vector<int>& v)
{
int n = v.size(), left = 0;
vector<int> tmp = v;
sort(tmp.begin(), tmp.end());
int index = 0;
for(int i = 1;i < tmp.size();++i)
{
if(tmp[i] > tmp[i - 1])
tmp[++index] = tmp[i];
}
tmp.resize(index + 1);
int ans = n + 1;
for(int i = 0;i < n;++i)
{
int index = 0, j;
for(j = i;j < n && index < tmp.size();++j)
{
if(v[j] == tmp[index])
++index;
}
if(index == tmp.size())
ans = min(ans, j - i);
}
if(ans == n + 1)
return -1;
return ans;
}
int main() {
int n;
freopen("secv.in", "r", stdin);
freopen("secv.out", "w", stdout);
cin >> n;
vector<int> v(n);
for(int i = 0;i < n;++i)
cin >> v[i];
cout << solve(v);
}