Pagini recente » Cod sursa (job #1917887) | Cod sursa (job #351751) | Cod sursa (job #1940808) | Cod sursa (job #2386736) | Cod sursa (job #1896661)
#include <cstdio>
using namespace std;
int s[500005], f[100005];
int main() {
freopen("divk.in", "r", stdin);
freopen("divk.out", "w", stdout);
int n, k, a, b, x, sol = 0;
scanf("%d%d%d%d", &n, &k, &a, &b);
for(int i = 1; i <= n; ++ i) {
scanf("%d", &x);
s[i] = s[i - 1] + x;
}
++ f[0];
for(int i = a; i <= n; ++ i) {
sol += f[s[i] % k];
++ f[s[i - a + 1] % k];
if(i - b >= 0) {
-- f[s[i - b] % k];
}
}
printf("%d", sol);
return 0;
}