Pagini recente » Cod sursa (job #2486018) | Cod sursa (job #2733517) | Cod sursa (job #1362473) | Cod sursa (job #1963794) | Cod sursa (job #1025771)
#include <cstdio>
using namespace std;
int v[500010],v1[100000];
int n,k,a,b,x,i;
long long int sol;
int main()
{
freopen("divk.in", "r", stdin);
freopen("divk.out", "w", stdout);
scanf("%d%d%d%d",&n,&k,&a,&b);
for(i=1;i<=n;i++)
{
scanf("%d",&x);
v[i]=(v[i-1]+x)%k;
}
for(i=1;i<=n;i++)
{
if(i-a>=0) v1[v[i-a]]++;
if(i-b>0) v1[v[i-b-1]]--;
sol+=v1[v[i]];
}
printf("%d",sol);
fclose(stdin);fclose(stdout);
return 0;
}