Pagini recente » Cod sursa (job #1513055) | Cod sursa (job #477411) | Cod sursa (job #73299) | Cod sursa (job #3204841) | Cod sursa (job #2717550)
#include <fstream>
using namespace std;
int n, k, a, b;
int v[500001];
int fr[100001];
long long sol = 0;
void read() {
int i;
ifstream f("divk.in");
f >> n >> k >> a >> b;
for (i = 1; i <= n; i++) {
f >> v[i];
v[i] = (1LL * v[i] + 1LL * v[i - 1]) % k;
}
f.close();
}
void solve() {
int i;
for (i = 1; i <= n; i++) {
if (i >= a)
fr[v[i - a]]++;
if (i > b)
fr[v[i - b - 1]]--;
sol += fr[v[i]];
}
}
void output() {
ofstream g("divk.out");
g << sol;
g.close();
}
int main() {
read();
solve();
output();
return 0;
}