Cod sursa(job #996748)

Utilizator dobrebogdanDobre Bogdan Mihai dobrebogdan Data 12 septembrie 2013 16:05:58
Problema Secv Scor 70
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.73 kb
#include<stdio.h>
#include<algorithm>
using namespace std;
unsigned v[5005],s[5005];
bool t[2000005];
int main()
{
    freopen("secv.in","r",stdin);
    freopen("secv.out","w",stdout);
unsigned n,i,m=0,l,j,p=0;
scanf("%u",&n);
for(i=1;i<=n;i++)
{
    scanf("%u",&v[i]);
    if(t[v[i]]==0)
    {
        t[v[i]]=1;
        m++;
        s[m]=v[i];
    }
}
if(m>1)
{
l=n+1;
sort(s+1,s+m+1);
for(i=1;i<=n;i++)
    if(v[i]==s[1])
{
    p=2;
    for(j=i+1;j<=n;j++)
    if(v[j]==s[p])
    {
        if(p<m)
        {
            p++;
        }
        else
        {
            break;
        }
    }
    if(j-i+1<l && j<=n)
    l=j-i+1;
}
printf("%u\n",l);
}
else
    printf("%u\n",m);
    return 0;
}