Pagini recente » Cod sursa (job #744341) | Cod sursa (job #992882) | Cod sursa (job #31641) | Cod sursa (job #435634) | Cod sursa (job #332282)
Cod sursa(job #332282)
#include <stdio.h>
FILE *in, *out;
long int n,k,a,b,i,sol,s[500005],v[500005];
int main()
{
in=fopen("divk.in","r");
out=fopen("divk.out","w");
fscanf(in,"%ld %ld %ld %ld\n",&n,&k,&a,&b);
for(i=0;i<n;i++)
{
fscanf(in,"%ld\n",&s[i]);
s[i]+=s[i-1];
}
for(i=0;i<a;i++)
v[s[i]%k]++;
sol+=v[s[0]%k];
for(i=b;i-a+1<n;i++)
{
v[s[i-b+1]%k]--;
v[s[i-a+2]%k]++;
sol+=v[s[i]%k];
}
fprintf(out,"%ld ",sol);
fclose(out);
return 0;
}