Pagini recente » Cod sursa (job #1582036) | Cod sursa (job #554641) | Cod sursa (job #1082192) | Cod sursa (job #2019274) | Cod sursa (job #1497609)
#include <stdio.h>
#include <iostream>
int v[500005], r[500005], sol;
int main (void) {
freopen("divk.in", "r", stdin);
freopen("divk.out", "w", stdout);
int n, k, a, b, x;
scanf("%d %d %d %d", &n, &k, &a, &b);
r[0] = 1;
for (int i = 1; i <= n; ++i) {
scanf("%d", &x);
v[i] = (v[i - 1] + x) % k;
}
for (int i = a; i <= n; ++i) {
sol += r[v[i]];
++r[v[i - a + 1]];
if (i >= b) --r[v[i - b]];
}
printf("%d", sol);
return 0;
}