Cod sursa(job #727688)

Utilizator teo.serbanescuTeo Serbanescu teo.serbanescu Data 28 martie 2012 10:46:27
Problema Divk Scor 90
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.46 kb
#include <fstream>

using namespace std;

long long  r[500000],n,k,a,b,x,i,j,nr[500000];
long long sol,s;

int main()
{
	fstream f("divk.in",ios::in);
	fstream g("divk.out",ios::out);
	f>>n>>k>>a>>b;
	s=0;
	for (i=1;i<=n;i++)
	{
		f>>x;
		s=s+x;
		r[i]=s%k;
	}
	r[0]=0;
	sol=0;
	for (i=a;i<=n;++i)
    {
        nr[r[i - a]]++;
        if (i>b) nr[r[i - b - 1]]--;
		sol=sol+ nr[r[i]];
    }
	g<<sol;
	f.close();
	g.close();
	return 0;
}