Cod sursa(job #2161008)

Utilizator ElektrykT E S L A P E F E L I E Elektryk Data 11 martie 2018 15:01:03
Problema Secv Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.93 kb
#include <fstream>
#include <algorithm>
using namespace std;
ifstream in("secv.in");
ofstream out("secv.out");
int n,v[5005],c[5005],mn=5005,k;
int main()
{
    in>>n;
    for(int i=1; i<=n; i++)
    {
        in>>v[i];
        c[i]=v[i];
    }
    sort(c+1,c+n+1);
    c[0]=-1;
    for(int i=1; i<=n; i++)
        if(c[i]!=c[i-1])
        {
            k++;
            c[k]=c[i];
        }
    if(k==1)
    {
        out<<"1\n";
        return 0;
    }
    for(int i=1; i<=n-k+1; i++)
        if(v[i]==c[1])
        {
            int p=2;
            for(int j=i+1; j<=n; j++)
            {
                if(v[j]==c[p])
                    p++;
                if(p==k+1)
                {
                    if(mn>j-i+1)
                        mn=j-i+1;
                    break;
                }
            }
        }
    if(mn==5005)
        out<<-1;
    else
        out<<mn;
    return 0;
}