Cod sursa(job #689648)

Utilizator vlad.doruIon Vlad-Doru vlad.doru Data 24 februarie 2012 18:32:40
Problema Divk Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.44 kb
#include <fstream>
#include <vector>

using namespace std;

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

const int N=500001;
const int K=100000;

int k,a,b,n;
int s[N];
long long rez;

int v[K];

int main(){
	int i,j,k,x;
	in>>n>>k>>a>>b;
	for(i=1;i<=n;++i){
		in>>x;
		s[i]=(s[i-1]+x)%k;
	}
	for(i=0;i<=n;++i){
		if(i-a>=0)
			v[s[i-a]]++;
		if(i-b>0)
			v[s[i-b-1]]--;
	rez+=v[s[i]];
	}
	out<<rez;
	return 0;
}