Cod sursa(job #1119780)

Utilizator sddddgjdZloteanu Anastasia sddddgjd Data 24 februarie 2014 20:00:46
Problema Secv Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.83 kb
#include<stdio.h>
#include<algorithm>
int nr[5000],cop[5000],sub[5000];
int main()
{
    FILE *fin,*fout;
    fin=fopen("secv.in","r");
    fout=fopen("secv.out","w");
    int n;
    fscanf(fin,"%d",&n);
    int i;
    for(i=0;i<n;i++)
    {
        fscanf(fin,"%d",&nr[i]);
        cop[i]=nr[i];
    }
    std::sort(cop,cop+n);
    int size=1;
    sub[0]=cop[0];
    for(i=1;i<n;i++)
        if(cop[i]!=cop[i-1])
            sub[size++]=cop[i];
    int length=5001;
    for(i=0;i<n;i++)
        if(nr[i]==sub[0])
        {
            int m=1,j;
            for(j=i+1;j<n&&m<size;j++)
                if(nr[j]==sub[m])
                    m++;
            if(m==size&&length>j-i)
                length=j-i;
        }
    if(length==5001)
        length=-1;
    fprintf(fout,"%d",length);
    return 0;
}