Cod sursa(job #729392)

Utilizator robertpoeRobert Poenaru robertpoe Data 29 martie 2012 16:06:23
Problema Divk Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.48 kb
#include<fstream>
#define dim 600000
using namespace std;
ifstream f("divk.in");
ofstream g("divk.out");
int a[dim],nb[dim];
long long n,i,j,k;
long long a1,b1,x;
long long s=0,rez=0;
void citeste()
{
	f>>n>>k>>a1>>b1;
	s=0;
	for (i=1;i<=n;i++)
	{
		f>>x;
		s=s+x;
		a[i]=s%k;
	}
}
void solve()
{
	for (i=a1;i<=n;++i)
    {
        nb[a[i-a1]]++;
        if(i>b1) 
			nb[a[i-b1-1]]--;
		rez+=nb[a[i]];
    }
}
int main()
{
	citeste();
	solve();
	a[0]=0;
	g<<rez;;
	return 0;
}