Cod sursa(job #610689)

Utilizator BlaugranasEnal Gemaledin Blaugranas Data 28 august 2011 19:44:20
Problema Divk Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.42 kb
#include<stdio.h>
#define N 500001
int n,k,a,b,i,j,c[N],v[N];
unsigned long long s[N],t;
int main()
{freopen("divk.in","r",stdin);
freopen("divk.out","w",stdout);
scanf("%ld%ld%ld%ld",&n,&k,&a,&b);
for(i=1;i<=n;i++)
      scanf("%ld",&c[i]),s[i]=s[i-1]+c[i];
for(i=1;i<=b-a;i++)
      v[s[i]%k]++;
for(i=b;i<=n;i++)
      {v[s[i-b+1]%k]--;
      v[s[i-a+2]%k]++;
      t=t+v[s[i]%k];}
printf("%llu",t);
return 0;}