Pagini recente » Cod sursa (job #193913) | Cod sursa (job #2314684) | Cod sursa (job #2579254) | Cod sursa (job #677739) | Cod sursa (job #238147)
Cod sursa(job #238147)
#include <stdio.h>
FILE*in = fopen("secventa.in","r");
FILE*out= fopen("secventa.out","w");
//long long s[5002],x[5002];
/*
void divizeaza(int s, int d, int &m){m=(s+d)/2;}
void interclaseaza(int s, int d, int m, long long x[5002]){
int i=s,j=m+1,k=1;
long long v[5002];
while(i<=m && j<=d){
if(x[i]<x[j]){v[k]=x[i];i++;}
else
if(x[i]>x[j]){v[k]=x[j];j++;}
k++;
}
if(i<=m) while(i<=m){v[k]=x[i];i++;k++;}
else while(j<=d){v[k]=x[j];j++;k++;}
for(k=1,i=s;i<=d;k++,i++){
x[i]=v[k];
}
}
void mergesort(int s,int d, long long x[5002]){
int m;
if(s<d){
divizeaza(s,d,m);
mergesort(s,m,x);
mergesort(m+1,d,x);
interclaseaza(s,d,m,x);
}
}
*/
long long n=0,i=0,j=0,t=0,ok=0,inc=0,sfr=0,min=5001;
int main(){
fscanf(in,"%lld",&n);
/*
for(i=1;i<=n;i++){
fscanf(in,"%lld",&x[i]);
ok=1;
for(j=1;j<=t && ok;j++)
if(s[j] == x[i])ok = 0;
if(ok){
t++;
s[t] = x[i];
}
}
mergesort(1,t,s);
inc=0;sfr=n;i=1;
while(i<=t){
ok=1;
if(i == 1){
for(j=inc+1;j<=n && ok;j++)
if(x[j] == s[i])ok=0;
if(!ok){inc = j-1;i++;}
else break;
continue;
}
if(i == t){
for(;j<=n && ok;j++)
if(x[j] == s[i])ok=0;
if(!ok){
i=1;
if(min>sfr-inc+1){min = sfr-inc+1;sfr = j-1;}
}else i=1;
continue;
}
for(;j<=n && ok;j++)
if(x[j] == s[i])ok = 0;
if(!ok)i++;
else i=1;
} */
fprintf(out,"%lld",min);
return 0;
}