Cod sursa(job #2193370)

Utilizator mihai50000Mihai-Cristian Popescu mihai50000 Data 9 aprilie 2018 20:38:05
Problema Divk Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.41 kb
#include <fstream>
using namespace std;
ifstream f("divk.in");
ofstream g("divk.out");
const int NMAX = 5e5 + 5;
const int KMAX = 1e5 + 5;
long long nr;
int k, a, b, n;
int v[NMAX];
int rest[KMAX];
int main()
{
	f >> n >> k >> a >> b;
	for(int i = 1; i <= n; i++)
	{
		f >> v[i];
		v[i] = (v[i] + v[i - 1]) % k;
		if(i >= a)
			rest[v[i - a]]++;
		if(i - b >= 1)
			rest[v[i - b - 1]]--;
		nr += rest[v[i]];
	}
	g << nr;
}