Pagini recente » Cod sursa (job #1300890) | Cod sursa (job #2381892) | Cod sursa (job #2696831) | Cod sursa (job #1696471) | Cod sursa (job #3137321)
//Ilie Dumitru
#include<cstdio>
const int NMAX=100005;
int v[NMAX];
int cnt[NMAX];
int main()
{
FILE* f=fopen("divk.in", "r"), *g=fopen("divk.out", "w");
//FILE* f=stdin, *g=stdout;
int i, N, a, b, k, sum=0;
long long int ans=0;
fscanf(f, "%d%d%d%d", &N, &k, &a, &b);
for(i=0;i<N;++i)
{
fscanf(f, "%d", v+i);
sum=v[i]=(v[i]+sum)%k;
if(i>=b)
--cnt[v[i-b]];
ans+=cnt[v[i]]++;
}
fprintf(g, "%lld\n", ans);
fclose(f);
fclose(g);
return 0;
}