Pagini recente » Cod sursa (job #1036088) | Cod sursa (job #1511357) | Cod sursa (job #989584) | Cod sursa (job #1727455) | Cod sursa (job #1881013)
#include <iostream>
#include <fstream>
using namespace std;
ifstream fin("divk.in");
ofstream fout("divk.out");
const int NMax=500005;
const int Kmax=100005;
int N,K,A,B,S[NMax],P[Kmax];
long long sol;
void Read()
{
int x;
fin>>N>>K>>A>>B;
for(int i=1;i<=N;++i)
{
fin>>x;
S[i]=(S[i-1]+x)%K;
}
}
void Solve()
{
for(int i=A;i<=N;++i)
{
P[S[i-A]]++;
if(i>B)
{
P[S[i-B-1]]--;
}
sol=sol+P[S[i]];
}
fout<<sol<<"\n";
}
int main()
{
Read();
Solve();
return 0;
}