Pagini recente » Cod sursa (job #1787464) | Cod sursa (job #2283005) | Cod sursa (job #2350006) | Cod sursa (job #2986746) | Cod sursa (job #731446)
Cod sursa(job #731446)
#include <iostream>
#include <stdio.h>
#define nmax 500000
using namespace std;
long long N, K, A, B, i;
long long v[nmax], sum[nmax], mih[nmax], rez;
int main()
{
freopen("divk.in","r",stdin);
freopen("divk.out","w",stdout);
scanf("%lld %lld %lld %lld\n",&N, &K, &A, &B);
for (i=1;i<=N;i++)
{
scanf("%lld\n", &v[i]);
}
for (i=1;i<=N;i++)
sum[i] = sum[i-1] + v[i];
for (i=A;i<=N;++i)
{
++mih[sum[i-A]%K];
if (i>B)
--mih[sum[i-B-1]%K];
rez += mih[sum[i]%K];
}
cout<<rez;
}