Pagini recente » Cod sursa (job #684664) | Cod sursa (job #2731768) | Cod sursa (job #1326337) | Cod sursa (job #2233772) | Cod sursa (job #712374)
Cod sursa(job #712374)
#include <fstream>
using namespace std;
ifstream fin ("divk.in");
ofstream fout ("divk.out");
int n, k, a, b, v[500010], r[500010], sum[500010], rez;
int main() {
int i;
fin >> n >> k >> a >> b;
for (i = 1; i <= n; ++i)
fin >> v[i];
for (i = 1; i <= n; ++i)
sum[i] = sum[i - 1] + v[i];
for (i = a - 1; i <= n; ++i) {
++r[sum[i - a + 1] % k];
if (i >= b)
--r[sum[i - b] % k];
rez += r[sum[i] % k];
}
fout << rez << "\n";
fout.close();
return 0;
}