Pagini recente » Cod sursa (job #2966021) | Cod sursa (job #1009432) | Cod sursa (job #900317) | Cod sursa (job #1985425) | Cod sursa (job #9480)
Cod sursa(job #9480)
#include<stdio.h>
int a[10000000];
long n , sir[1500000];
long i , j , l , u , k ,x;
int main()
{
freopen("secv5.in","r",stdin);
freopen("secv5.out","w",stdout);
scanf("%ld%ld%ld",&n,&l,&u);
for (i = 1 ; i <= n ; i++)
scanf("%ld",&sir[i]);
k = u+1;
long nrsol = 0;
for (i = 1 ; i < l ; i++)
a[sir[i]] += 1;
for (i = l ; i <= n ; i++)
{
x = 1;
a[sir[i]] = k;
for (j = i-1;j>= 1; j--)
{
if (a[sir[j]] < k)
{
x++;
a[sir[j]] = k;
if( x >=l && x <= u)
{
nrsol++;
}
else
if ( x > u)
break;
else
if (i-j+1>u)
break;
}
else
if (a[sir[j]] == k && x >= l && x <= u)
{
nrsol++;}
}
k++;
}
printf("%ld",nrsol);
return 0;
}