Cod sursa(job #195999)

Utilizator nusmaibunkeleviprofesor cicalescu nusmaibunkelevi Data 23 iunie 2008 20:57:37
Problema Divk Scor 30
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.49 kb
#include<stdio.h>
#define NMAX 500000

int main(){
freopen("divk.in","r",stdin);
freopen("divk.out","w",stdout);
unsigned long long int  v[NMAX],d;
int n,i,j,nrs=0,k,a,b,x,f;
scanf("%d%d%d%d",&n,&k,&a,&b);
v[0]=0UL;
for(i=1;i<=n;++i){
	scanf("%d",&x);
	v[i]=v[i-1]+x;
	}

for(j=a;j<=b;++j)
	for(i=j;i<=n;++i){
		d=v[i]-v[i-j];
		if(d%k==0) {nrs++;
		  /*	for(f=i-j+1;f<=i;++f)
				printf("%llu ",v[f]-v[f-1]);
			printf("\n");*/
			}
		}


printf("%d",nrs);
return 0;
}