Cod sursa(job #31026)

Utilizator PetruRaresPetru Rares PetruRares Data 15 martie 2007 13:23:40
Problema Divk Scor 20
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.52 kb
#include <fstream.h>
#define MAXN 500000

unsigned long int N,K,A,B,a[MAXN], nr;

void citire ( )
{
ifstream f ("divk.in");
f>>N>>K>>A>>B;
unsigned long int i;
for (i=1; i<=N; i++)
	f>>a[i];
f.close();
}

void rezolva ( )
{
unsigned long int s[MAXN],i,j;
for (i=1; i<=N; i++)
{
s[i]=a[i];
	for (j=i+1; j<=N; j++)
	{
		s[j]=s[j-1]+a[j];
		if ((j-i+1>=A)&&(j-i+1<=B))
			if (s[j]%K==0)
				nr++;
	}
}
}

int main ( )
{
citire ( );
rezolva();
ofstream g ("divk.out");
g<<nr;
g.close();
return 0;
}