Pagini recente » Cod sursa (job #289548) | Cod sursa (job #1034209) | Cod sursa (job #79543) | Cod sursa (job #1827564) | Cod sursa (job #1565892)
#include <fstream>
#define ValN 500005
using namespace std;
ifstream fin("divk.in");
ofstream fout("divk.out");
int K, N, A, B;
int i, j, v[ValN];
long long x[ValN], nr;
int main()
{
fin >> N >> K >> A >> B;
for (i=1; i<=N; i++)
{
fin >> v[i];
v[i]+=v[i-1];
v[i]%=K;
x[v[i]]++;
if (v[i]==0 && A<=i && i<=B)
nr++;
if (i>B)
x[v[i-B]]--;
if (i>=A)
{
nr+=x[v[i]]-1;
if (v[i]==v[i-1])
nr--;
}
}
fout << nr;
fin.close();
fout.close();
return 0;
}