Cod sursa(job #606003)

Utilizator stefanzzzStefan Popa stefanzzz Data 3 august 2011 10:27:29
Problema Divk Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.37 kb
#include <fstream.h>

long x,a,b,n,k,i,v[500002],uz[100002];
long long s;

main(){
	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)%k;}
	for(i=a;i<=n;i++){
		uz[v[i-a]]++;
		if(i>b)
			uz[v[i-b-1]]--;
		s+=uz[v[i]];}
	printf("%lld", s);
}