Pagini recente » Cod sursa (job #1287003) | Cod sursa (job #1411962) | Cod sursa (job #3263394) | Cod sursa (job #665735) | Cod sursa (job #3265182)
#include <bits/stdc++.h>
using namespace std;
ifstream fcin("secv.in");
ofstream fcout("secv.out");
const int N = 5e3 + 5;
int v[N], n, lmin = N, maxx;
map<int, int> m;
int main()
{
fcin >> n;
for (int i = 1; i <= n; i++)
{
fcin >> v[i];
m[v[i]] = 1;
}
int x = 0;
for (auto &p : m)
p.second = ++x;
maxx = x;
for (int i = 1; i <= n; i++)
v[i] = m[v[i]];
for (int i = 1; i <= n; i++)
{
if (v[i] == 1)
{
int l = INT_MAX;
x = 1;
for (int j = i; j <= n; j++)
{
if (v[j] == x)
x++;
if (x == maxx + 1)
{
l = j - i + 1;
break;
}
}
lmin = min(lmin, l);
}
}
lmin = (lmin == N) ? -1 : lmin;
fcout << lmin;
return 0;
}