Pagini recente » Cod sursa (job #1687064) | Cod sursa (job #161649) | Cod sursa (job #2027768) | Cod sursa (job #1595874) | Cod sursa (job #1453564)
#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[500005];
cin >> n >> k >> a >> b;
for (int i = 1; i <= n; i++) {
int aux;
cin >> aux;
v[i] = (v[i - 1] + aux) % k;
}
long long ans = 0;
dp[0] = 1;
for (int i = 1; i <= n; i++) {
if (i >= a) {
dp[v[i - a]]++;
}
if (i >= b + 1) {
dp[v[i - b - 1]]--;
}
ans += dp[v[i]];
}
cout << ans;
return 0;
}