Pagini recente » Cod sursa (job #1617484) | Cod sursa (job #2029414) | Cod sursa (job #2870544) | Cod sursa (job #959957) | Cod sursa (job #1453569)
#include <cstdio>
#include <iostream>
using namespace std;
int main() {
freopen("divk.in", "r", stdin);
freopen("divk.out", "w", stdout);
ios_base::sync_with_stdio(false);
cin.tie(0);
int n, v[500005], k, a, b, dp[100005];
// int n, v[55], k, a, b, dp[15];
cin >> n >> k >> a >> b;
v[0] = 0;
for (int i = 1; i <= n; i++) {
int aux;
cin >> aux;
v[i] = (v[i - 1] + aux) % k;
}
long long ans = 0;
for (int i = 0; i < k; i++) {
dp[i] = 0;
}
for (int i = 1; i <= n; i++) {
if (i >= a) {
dp[v[i - a]]++;
}
if (i > b) {
dp[v[i - b - 1]]--;
}
ans += dp[v[i]];
}
cout << ans;
return 0;
}