Pagini recente » Cod sursa (job #328823) | Cod sursa (job #2685222) | Cod sursa (job #1308750) | Cod sursa (job #2676690) | Cod sursa (job #2193452)
#include <fstream>
using namespace std;
ifstream cin ("divk.in");
ofstream cout ("divk.out");
const int kmax = 100000;
const int nmax = 500000;
int n, k, a, b;
int nr;
long long sol;
int sp[1 + nmax];
int f[1 + kmax];
int main() {
cin >> n >> k >> a >> b;
for(int i = 1; i <= n; i++) {
cin >> nr;
sp[i] = (sp[i - 1] + nr) % k;
if(i >= a)
f[sp[i - a]]++;
if(i >= b + 1)
f[sp[i - b - 1]]--;
sol += f[sp[i]];
}
cout << sol;
return 0;
}