Pagini recente » Cod sursa (job #1167607) | Cod sursa (job #1787490) | Cod sursa (job #722282) | Cod sursa (job #1791442) | Cod sursa (job #2214822)
#include <fstream>
#define VMAX 500010
std::ifstream fin("divk.in");
std::ofstream fout("divk.out");
int n, k, a, b, sol;
int dp[VMAX];
int main() {
int val;
fin >> n >> k >> a >> b;
for (int i = 1; i <= n; i++) {
fin >> val;
dp[i] = (dp[i - 1] + val) % k;
int hi = i - a > 0 ? i - a : 0;
int lo = i - b > 0 ? i - b : 0;
for (int j = lo; j <= hi; j++)
if (dp[j] == dp[i])
sol++;
}
fout << sol << '\n';
fout.close();
return 0;
}