Cod sursa(job #3365289)

Utilizator GabrielaBellaMircea Gabriela GabrielaBella Data 17 septembrie 2026 21:48:47
Problema Divk Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.62 kb
#include <iostream>
#include <cstdio>

using namespace std;

long long sp[500005];
long long frec[100005];

int main()
{
    freopen("divk.in", "r", stdin);
    freopen("divk.out", "w", stdout);

    ios_base::sync_with_stdio(false);
    cin.tie(NULL);

    int n, a, b, k, x;
    cin >> n >> k >> a >> b;
    for (int i=1; i<=n; i++) {
        cin >> x;
        sp[i]=sp[i-1]+x;
    }
    long long cnt=0;
    for (int i=a; i<=n; i++) {
        frec[sp[i-a]%k]++;
        if (i-b-1>=0) {
            frec[sp[i-b-1]%k]--;
        }
        cnt+=frec[sp[i]%k];
    }
    cout << cnt;
    return 0;
}