Cod sursa(job #912236)

Utilizator apopeid13Apopeid Alejandro apopeid13 Data 12 martie 2013 10:44:05
Problema Secv Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.82 kb
#include<stdio.h>
#include<math.h>
#include<algorithm>

using namespace std;

int b[5005],v[5005],a[5005],ct,k,nr,n,i,j;
int main()
{
    FILE *f=fopen("secv.in","r");
    FILE *g=fopen("secv.out","w");

    nr=10000;
    fscanf(f,"%d",&n);
    for(i=1;i<=n;i++)
    {
    fscanf(f,"%d",&v[i]);
    a[i]=v[i];

    }

    stable_sort(v+1,v+n+1);

    b[1]=v[1];
    k=1;

    for(i=2;i<=n;i++)
        if(v[i]!=v[i-1])b[++k]=v[i];

    for(i=1;i<=n;i++)
    {
      if(a[i]==b[1])
      {

       ct=0;
        for(j=i;j<=n;j++)
         {
          if(a[j]==b[ct+1])ct++;

        if(ct==k)
          {

          if(j-i+1<=nr)
          nr=j-i+1;
          }
         }
      }

    }


if(nr==10000)fprintf(g,"%d",-1);
 else fprintf(g,"%d",nr);




fclose(g);
return 0;
}