Cod sursa(job #594562)

Utilizator valentin.harsanValentin Harsan valentin.harsan Data 8 iunie 2011 13:00:15
Problema Divk Scor 90
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.42 kb
#include<stdio.h>
#define N 524288

int n,a,b,k,x[N],w[N];
long long sum;

int main() {
	int i;
	freopen("divk.in","r",stdin);
	freopen("divk.out","w",stdout);
	scanf("%d%d%d%d",&n,&k,&a,&b);
	++b;
	for(i=1;i<=n;++i) {
		scanf("%d",&x[i]);
		x[i]=(x[i]+x[i-1])%k;
	}
	for(i=a;i<=n;++i){
        ++w[x[i-a]];
        if(i>=b)
            --w[x[i-b]];
        sum+=w[x[i]];
	}
	printf("%d",sum);
	return 0;
}