Cod sursa(job #195999)
| Utilizator | 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;
}
