Cod sursa(job #930420)
Utilizator | Robert Morosanu multislash | Data | 27 martie 2013 17:15:57 |
---|---|---|---|
Problema | Divk | Scor | 40 |
Compilator | cpp | Status | done |
Runda | Arhiva de probleme | Marime | 0.48 kb |
#include<cstdio>
using namespace std;
int j,nr,n,k,a,b,i,v[500010],sp[500010];
void sumepart()
{
for(i=1;i<=n;i++) sp[i]=sp[i-1]+v[i];
}
int main()
{
freopen("divk.in","r",stdin);
freopen("divk.out","w",stdout);
scanf("%d%d%d%d",&n,&k,&a,&b);
for(i=1;i<=n;i++) scanf("%d",&v[i]);
sumepart();
for(i=a;i<=b;i++)
{
for(j=1;j<=n-i+1;j++)
{if((sp[j+i-1]-sp[j-1])%k==0) nr++;
}
}
printf("%d",nr);
return 0;
}