Cod sursa(job #1497548)

Utilizator aimrdlAndrei mrdl aimrdl Data 6 octombrie 2015 22:21:45
Problema Divk Scor 30
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.44 kb
#include <stdio.h>

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