Pagini recente » Cod sursa (job #2507812) | Cod sursa (job #678275) | Cod sursa (job #2330436) | Cod sursa (job #583279) | Cod sursa (job #510264)
Cod sursa(job #510264)
#include <stdio.h>
int a,b,n,k,v[500001],i,m[500001];
long long rez;
int main()
{
freopen("divk.in","r",stdin);
freopen("divk.out","w",stdout);
scanf("%d%d%d%d",&n,&k,&a,&b);
for(i=1;i<=n;i++){
scanf("%d",&v[i]);
v[i]+=v[i-1];
v[i]%=k;
}
m[0]=1;
for(i=a;i<=n;i++){
rez+=m[v[i]];
m[v[i-a+1]]++;
if(i>=b){
m[v[i-b]]--;
}
}
printf("%lld",rez);
}