Pagini recente » Cod sursa (job #2102374) | Cod sursa (job #2295032) | Cod sursa (job #1356630) | Cod sursa (job #2821977) | Cod sursa (job #1741098)
// brut, o(n^2)
#include <fstream>
#include <algorithm>
#define DIM 5010
using namespace std;
int v[DIM], w[DIM];
int i, n, j, k, nxt, sol;
int main () {
ifstream fin ("secv.in");
ofstream fout("secv.out");
fin>>n;
for (int i=1;i<=n;i++) {
fin>>v[i];
w[i] = v[i];
}
sort(w+1, w+n+1);
k = 1; sol = n+1;
for (int i=2;i<=n;i++)
if (w[i] != w[k])
w[++k] = w[i];
for (int i=1;i<=n-k+1;i++)
if (v[i] == w[1]) {
nxt = 2;
for (j=i+1;j<=n;j++)
if (v[j] == w[nxt]) {
nxt ++;
if (nxt == k+1)
sol = min(sol, j-i+1);
}
}
if (sol != n+1)
fout<<sol;
else
fout<<-1;
return 0;
}