Cod sursa(job #2253587)

Utilizator LivcristiTerebes Liviu Livcristi Data 4 octombrie 2018 10:19:03
Problema Divk Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.52 kb
#include <bits/stdc++.h>
#define NUM 100005
int v[NUM];
int s[NUM * 5];
int n, k, a, b;
long long rez;
using namespace std;
ifstream f("divk.in");
ofstream g("divk.out");
int main()
{
    f >> n >> k >> a >> b;
    for(int i = 1, x; i <= n; i++)
    {
        f >> x;
        s[i] = (x + s[i - 1]) % k;
    }
    for(int i = 1; i <= n; i++)
    {
        if(i >= a)
            v[s[i - a]]++;
        if(i >= b + 1)
            v[s[i - (b + 1)]]--;
        rez += v[s[i]];
    }
    g << rez;
    return 0;
}