Pagini recente » Cod sursa (job #976143) | Cod sursa (job #1875420) | Cod sursa (job #2416955) | Cod sursa (job #301276) | Cod sursa (job #2350823)
#include <bits/stdc++.h>
using namespace std;
const int NMAX = 500004;
int N, K, A, B, sol;
int S[NMAX], R[NMAX];
int main(){
freopen("divk.in", "r", stdin);
freopen("divk.out", "w", stdout);
scanf("%d%d%d%d", &N, &K, &A, &B);
for(int i = 1, x; i <= N; i++){
scanf("%d", &x);
S[i] = S[i - 1] + x;
if(i - B - 1 >= 0)
R[S[i - B - 1] % K]--;
if(i - A >= 0)
R[S[i - A] % K]++;
sol += R[S[i] % K];
}
printf("%d", sol);
return 0;
}