Pagini recente » Cod sursa (job #378031) | Cod sursa (job #212580) | Cod sursa (job #499128) | Cod sursa (job #694528) | Cod sursa (job #2462687)
#include <bits/stdc++.h>
std::ifstream in("divk.in");
std::ofstream out("divk.out");
int v[500005];
int sp[500005];
int f[100005];
int main(){
int n,k,a,b,i;
in>>n>>k>>a>>b;
for (i=1;i<=n;++i){
in>>v[i];
sp[i]=(sp[i-1]+v[i])%k;}
long long ans(0);
for (i=a;i<=b;++i) {
f[sp[i-a]]++;
ans+=1ll*f[sp[i]];}
int lst=1;
for (;i <= n;++i){
f[sp[i-a]]++;
f[sp[i-b-1]]--;
ans+=1ll*f[sp[i]];}
out<<ans;}