Cod sursa(job #312140)
Utilizator | Data | 5 mai 2009 10:38:49 | |
---|---|---|---|
Problema | Divk | Scor | 20 |
Compilator | cpp | Status | done |
Runda | Arhiva de probleme | Marime | 0.47 kb |
#include <cstdio>
int main()
{
freopen("divk.in","r",stdin);
freopen("divk.out","w",stdout);
long a,b,k,n,i,sum=0,el[500001],nr=0,j;
scanf("%ld%ld%ld%ld",&n,&k,&a,&b);
for(i=1;i<=n;i++)
scanf("%ld",el+i);
for(i=1;i<=n-a+1;i++)
{
sum=el[i]%k;
if(!sum&&a==1) nr++;
for(j=i+1;j<=i+b-1&&j<=n;j++)
{
sum = (sum + el[j] % k) % k;
if(!sum&&j-i+1>=a) nr ++;
}
}
printf("%ld",nr);
fclose(stdin);
fclose(stdout);
return 0;
}