Pagini recente » Cod sursa (job #434265) | Cod sursa (job #443620) | Cod sursa (job #616126) | Cod sursa (job #538339) | Cod sursa (job #1880120)
#include <fstream>
#include <iostream>
#include <algorithm>
#include <deque>
#define inf 0x3f3f3f3f
using namespace std;
ifstream f("secv.in");
ofstream g("secv.out");
int v[5005], b[5005], c[5005], n, sol = inf;
int main()
{
int l = 0, k = 1, nr = 1;
f >> n;
for(int i = 1; i <= n; ++i) f >> v[i], b[i] = v[i];
sort(b + 1, b + n + 1);
c[1] = b[1];
if(n == 1) g << "1" << '\n';
else
{
for(int i = 2; i <= n; ++i)
{
if(b[i] != c[k]) c[++k] = b[i];
}
for(int i = 1; i <= n; ++i)
{
if(c[1] == v[i])
{
l = 1;
nr = 2;
}
for(int j = i + 1; j <= n; ++j)
{
l++;
if(v[j] == c[nr]) nr++;
if(nr - 1 == k )
{
if(l < sol) sol = l;
break;
}
}
}
if(sol == inf) g << "-1" << '\n';
else g << sol << '\n';
}
}