Pagini recente » Cod sursa (job #1372605) | Cod sursa (job #2259449) | Cod sursa (job #735406) | Cod sursa (job #454847) | Cod sursa (job #761692)
Cod sursa(job #761692)
#include <stdio.h>
long s[1000000],v[1000000];
long long nr=0;
int main()
{
long i,n,k,a,b,p;
FILE *f,*g;
f = fopen("divk.in","r");
fscanf(f,"%ld %ld %ld %ld",&n,&k,&a,&b);
for(i = 1;i<=n;i++)
{
fscanf(f,"%ld",&p);
s[i] = (s[i-1]+p) % k;
}
for(i=1;i<=n;i++)
{
if (i > b) v[s[i-b-1]]--;
if (i >= a) v[s[i-a]]++;
nr = nr + v[s[i]];
}
fclose(f);
g = fopen("divk.out","w");
fprintf(g,"%lld",nr);
fclose(g);
return 0;
}