Cod sursa(job #2218511)

Utilizator NOSCOPEPROKENDYMACHEAMACUMVREAU NOSCOPEPROKENDY Data 4 iulie 2018 18:20:50
Problema Divk Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.44 kb
#include <bits/stdc++.h>

using namespace std;

ifstream fin ("divk.in");
ofstream fout ("divk.out");

int f[100002];
int sum[500002], n, x, a, b, k;
long long sol;

int main()
{
  fin >> n >> k >> a >> b;
  for (int i = 1; i <= n; i++) {
    fin >> x;
    sum[i] = (sum[i - 1] + x) % k;
    if (i >= a)
      f[sum[i - a]]++;
    if (i >= b + 1)
      f[sum[i - b - 1]]--;
    sol += f[sum[i]];
  }
  fout << sol;
  return 0;
}