Cod sursa(job #31096)

Utilizator themenaceAgrigoroaei Pavel themenace Data 15 martie 2007 15:08:29
Problema Divk Scor 40
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.47 kb
#include <stdio.h>
long N,K,A,B,nr;
long v[500001];

int main ()
{
long i,x,j;
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",&x);
    v[i]=v[i-1]+x;
    }
for (i=A;i<=B;i++)
   if (v[i]%K==0) nr++;
for (i=2;i<=N-A+1;i++)
   for (j=A;(j<=B)&&(i+j-1<=N);j++)
       if ((v[i+j-1]-v[i-1])%K==0) nr++;

printf ("%ld",nr);
fclose (stdin);
fclose (stdout);
return 0;
}