Cod sursa(job #615333)

Utilizator soriynSorin Rita soriyn Data 9 octombrie 2011 14:08:34
Problema Divk Scor 10
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.49 kb
#include<stdio.h>


int sume[500010],nr;
long long sol;

int A,B,K,n;

int main()
{
	freopen("divk.in","r",stdin);
	freopen("divk.out","w",stdout);
	
	scanf("%d %d %d %d",&n,&K,&A,&B);
	
	for(int i=1;i<=n;i++)
	{
		scanf("%d",&nr);
	    sume[i]=sume[i-1]+nr;
		if(i-B>=0)
		{
			for(int j=i-B;j<=i-A;j++)
			{
				if((sume[i]-sume[j])%K==0) sol++;
			}
		}
		else
		{
			for(int j=1;j<=i-A;j++)
				if((sume[i]-sume[j])%K==0) sol++;
		}
	}
	printf("%lld",sol);
	
}