Pagini recente » Cod sursa (job #1049856) | Cod sursa (job #2887005) | Cod sursa (job #2863397) | Cod sursa (job #492470) | Cod sursa (job #1826413)
#include <stdio.h>
#include <stdlib.h>
int freq[100000], v[500001];
int main(){
FILE *fin, *fout;
int n, k, a, b, i, nr, s;
fin=fopen("divk.in", "r");
fout=fopen("divk.out", "w");
fscanf(fin, "%d%d%d%d", &n, &k, &a, &b);
s=0;
for(i=1;i<=n;i++){
fscanf(fin, "%d", &nr);
v[i]=(v[i-1]+nr)%k;
if(i>=a)
freq[v[i-a]]++;
if(i>b)
freq[v[i-b-1]]--;
s+=freq[v[i]];
}
fprintf(fout, "%d", s);
fclose(fin);
fclose(fout);
return 0;
}