Cod sursa(job #630371)

Utilizator BlaugranasEnal Gemaledin Blaugranas Data 5 noiembrie 2011 14:06:10
Problema Divk Scor 90
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.41 kb
#include<stdio.h>
#define N 500001
long long n,k,a,b,i,c,v[N/5],s[N],t;
int main()
{FILE *f=fopen("divk.in","r"),*g=fopen("divk.out","w");
fscanf(f,"%lld%lld%lld%lld",&n,&k,&a,&b);
for(i=1;i<=n;i++)
      {fscanf(f,"%lld",&c),s[i]=s[i-1]+c;
      if(i>=b+1&&v[s[i-b-1]%k]>0)
              v[s[i-b-1]%k]--;
      if(i>=a)
              v[s[i-a]%k]++;
      t+=v[s[i]%k];}
fprintf(g,"%lld",t);
return 0;}