Pagini recente » Cod sursa (job #809472) | Cod sursa (job #1444934) | Cod sursa (job #238282) | Cod sursa (job #2354256) | Cod sursa (job #2462713)
#include <cstdio>
#include <fstream>
using namespace std;
const int N = 5 * 1e5;
int nr[5 + N], sum[5 + N];
ifstream in ("divk.in");
ofstream out ("divk.out");
int main()
{
ios_base::sync_with_stdio(false);
//freopen("divk.in", "r", stdin);
//freopen("divk.out", "w", stdout);
int n, k, a, b, i, x;
long long rez = 0;
in >> n >> k >> a >> b;
for(i = 1; i <= n; i++){
in >> x;
sum[i] = sum[i - 1] + x;
sum[i] %= k;
}
for(i = a; i <= b; i++){
nr[sum[i-a]]++;
rez += nr[sum[i]];
}
for(i = b + 1; i <= n; i++){
nr[sum[i-a]]++;
nr[sum[i-b-1]]--;
rez += nr[sum[i]];
}
out << rez;
return 0;
}