Cod sursa(job #3288196)

Utilizator ax_dogaruDogaru Alexandru ax_dogaru Data 20 martie 2025 20:36:44
Problema Secv Scor 80
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.93 kb
#include <bits/stdc++.h>

using namespace std;

ifstream fin("secv.in");
ofstream fout("secv.out");

int n, v[5005];
pair<int, int> ab[5005];

int main()
{
    fin >> n;
    for(int i=1; i<=n; i++) {
        fin >> ab[i].first;
        ab[i].second=i;
    }
    sort(ab+1, ab+n+1);
    ab[0].first=-1;
    int nr=0;
    for(int i=1; i<=n; i++) {
        if(ab[i].first!=ab[i-1].first) {
            nr++;
        }
        v[ab[i].second]=nr;
    }
    int nxt, len, sol=10000, j;
    for(int i=1; i<=n; i++) {
        nxt=2;
        len=1;
        if(v[i]==1) {
            for(j=i+1; j<=n && nxt<=nr; j++) {
                if(v[j]==1 && nxt==2) {
                    i=j;
                }
                if(v[j]==nxt) {
                    nxt++;
                }
            }
            if(nxt>nr) {
                sol=min(sol, j-i);
            }
        }
    }
    fout << sol;
    return 0;
}