Cod sursa(job #2416658)

Utilizator Carol_LucaCarol Luca Carol_Luca Data 27 aprilie 2019 20:42:40
Problema Divk Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.54 kb
/// divk


#include <fstream>

#define DIM 500010

using namespace std;

int p[DIM], fr[DIM], n, k, a, b, i, x;

long long sol;

int main()

{

    ifstream f("divk.in");

    ofstream g("divk.out");

    f >> n >> k >> a >> b;

    for(i = 1; i <= n; i ++)

    {

        f >> x;

        p[i] = ( p[i - 1] + x ) % k;

        if(i >= a) fr[ p[i - a] ] ++;

        if(i > b) fr[ p[i - b - 1] ] --;

        sol = sol + fr[ p[i] ];

    }

    g << sol;

    f.close();

    g.close();

    return 0;

}