Cod sursa(job #1360407)

Utilizator danysilas23Silas Daniel danysilas23 Data 25 februarie 2015 14:32:14
Problema Secv Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.81 kb
#include <fstream>
#include <algorithm>
#include <cmath>
using namespace std;
ifstream cin("secv.in");
ofstream cout("secv.out");

int c[5005], r[5005], a[5005],  i, j,  n, x=500000000, f,  k=0;




int main()
{
    cin>>n;

    c[0]=-1;
   for (i=1; i<=n; ++i)
         cin>>a[i], c[i]=a[i];

    sort(c+1, c+n+1);

    for (i=1; i<=n; ++i)
     if (c[i]!=c[i-1])
        r[++k]=c[i];

        if (k==1) x=1;

    for (i=1; i<=n; ++i)
        if (r[1]==a[i])
        {
            f=1;
            for (j=i+1; j<=n; ++j)
            {
                if (a[j]==r[f+1])
                {
                    ++f;
                    if (f==k) {x=min(x, j-i+1);  break; }

                }

            }
        }

    if (x==500000000) cout<<-1; else cout<<x;




    return 0;
}