Pagini recente » Cod sursa (job #1694453) | Cod sursa (job #2071358) | Cod sursa (job #2600512) | Cod sursa (job #390885) | Cod sursa (job #2500520)
#include <fstream>
using namespace std;
ifstream cin("divk.in");
ofstream cout("divk.out");
long long v[500005],s[500005],k,a,b,n,cnt,x;
//in v retin cate sume am cu restul s[i-a]
int main()
{
cin>>n>>k>>a>>b;
for(int i=1;i<=n;i++){
cin>>x;
x%=k;
s[i]=(s[i-1]+x)%k;
if(i>=a){
v[s[i-a]]++;
if(i>b){
v[s[i-b-1]]--;
}
cnt+=v[s[i]];
}
}
cout<<cnt;
return 0;
}