Cod sursa(job #2204164)

Utilizator Hidden.bdBurlacu Doru Hidden.bd Data 14 mai 2018 20:19:02
Problema Divk Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.62 kb
#include <iostream>
#include <fstream>
#include <algorithm>
#include <stack>
#include <cmath>
#include <iomanip>

#define PI 3.141592653589793

using namespace std;

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

//#define fin cin
//#define fout cout

int fr[100002];

int main(){

	int n, v[500002]; v[0] = 0;
	int k, a, b;
	long long sol = 0;

	fin >> n >> k >> a >> b;

	for( int i = 1 ; i <= n ; ++i ){
		fin >> v[i];
		v[i] = (v[i] % k + v[i-1] % k) % k;
	}

	for( int i = a ; i <= n ; ++i ){
		if( i >= a ){
			++fr[v[i-a]];
		}

		if( i >= b + 1 ){
			--fr[v[i-b-1]];
		}
		sol += fr[v[i]];
	}

	fout << sol;

    return 0;
}