Pagini recente » Cod sursa (job #2593845) | Cod sursa (job #293389) | Cod sursa (job #2744965) | Cod sursa (job #2598664) | Cod sursa (job #857990)
Cod sursa(job #857990)
//brut
#include<cstdio>
#include<cstring>
int v[1050000];
int c[1050000];
int main()
{
freopen ("secv5.in","r",stdin);
#ifdef INFOARENA
freopen ("secv5.out","w",stdout);
#endif
int a,b,n;
scanf ("%d%d%d",&n,&a,&b);
for(int i=0;i<n;i++)
scanf ("%d",v+i);
//normalize
int ret=0;
for(int l=1;l<=n;l++){
memset (c,0,sizeof c);
int cnt=0;
for(int i=0;i<l;i++){
c[v[i]]++;
if(c[v[i]]==1)
cnt++;
}
if(cnt>=a&&cnt<=b)
ret++;
for(int i=l;i<n;i++){
c[v[i]]++;
if(c[v[i]]==1)
cnt++;
c[v[i-l]]--;
if(c[v[i-l]]==0)
cnt--;
if(cnt>=a&&cnt<=b)
ret++;
}
}
printf ("%d",ret);
return 0;
}