Pagini recente » Cod sursa (job #2502863) | Cod sursa (job #2041375) | Cod sursa (job #1992923) | Cod sursa (job #617742) | Cod sursa (job #3234818)
#include <vector>
#include <fstream>
#include <algorithm>
using namespace std;
const int nmax = 5e5 + 10;
const int kmax = 1e5 + 10;
int n, k, a, b, v[nmax];
long long s[nmax], res;
int cnt[kmax];
int main() {
ifstream in("divk.in");
ofstream out("divk.out");
in >> n >> k >> a >> b;
for (int i = 1; i <= n; i++) {
in >> v[i];
s[i] = (s[i - 1] + v[i]) % k;
if (i >= a) {
cnt[s[i - a]]++;
}
res += cnt[s[i]];
if (i >= b) {
cnt[s[i - b]]--;
}
}
out << res << "\n";
return 0;
}