Cod sursa(job #2777715)

Utilizator puica2018Puica Andrei puica2018 Data 23 septembrie 2021 22:48:40
Problema Secv Scor 90
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.77 kb
#include <bits/stdc++.h>

using namespace std;

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

int n;
int a[5005],b[5005],k;

int main()
{
    fin>>n;
    int i;
    for(i=1; i<=n; i++)
        fin>>a[i];
    for(i=1; i<=n; i++)
        b[i]=a[i];
    sort(b+1,b+n+1);
    k=1;
    for(i=2; i<=n; i++)
        if(b[i]>b[k])
            b[++k]=b[i];
    int ans=n+1;
    for(i=1; i<=n; i++)
    {
        if(a[i]!=b[1])
            continue;
        int ind=2,j;
        for(j=i+1; j<=n; j++)
        {
            if(a[j]==b[ind])
                ind++;
            if(ind==k+1)
                break;
        }
        if(ind==k+1)
            ans=min(ans,j-i+1);
    }
    if(ans==n+1)
        ans=-1;
    fout<<ans<<"\n";
    return 0;
}