Cod sursa(job #2452599)

Utilizator StefanSanStanescu Stefan StefanSan Data 31 august 2019 14:03:54
Problema Divk Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.51 kb
#include <fstream>

using namespace std;

ifstream in("divk.in");
ofstream out("divk.out");

long long int n, a, b, k, vector[500001], sume[500001], nr = 0;

int main() {
	ios_base::sync_with_stdio(false);
	in.tie(NULL), out.tie(NULL);

	sume[0] = 0;

	in >> n >> k >> a >> b;
	for (int i = 1; i <= n; i++) {
		int x;
		in >> x;
		sume[i] = (sume[i - 1] + x) % k;
		if (i >= a) vector[sume[i - a]]++;
		if (i > b)vector[sume[i - b - 1]]--;
		nr = nr + vector[sume[i]];
	}
	
	
	out << nr;

}