Pagini recente » Cod sursa (job #282713) | Cod sursa (job #2970176) | Cod sursa (job #114318) | Cod sursa (job #2051037) | Cod sursa (job #1052161)
#include <iostream>
#include <fstream>
#define MAXN 500001
#define MAXK 100001
using namespace std;
ifstream f("divk.in");
ofstream g("divk.out");
int n,k,a,b;
long long r[MAXN],counter[MAXK],sol;
int main()
{
int i,x;
f >> n >> k >> a >> b;
r[0] = 0;
for(i=1;i<=n;i++){
f >> x;
r[i] = (r[i-1] + x) % k;
if (i > b)
counter[r[i-b-1]]--;
if(i >= a)
counter[r[i-a]]++;
sol = sol+counter[r[i]];
}
g << sol;
return 0;
}