Cod sursa(job #2219566)

Utilizator Ioana_GaborGabor Ioana Ioana_Gabor Data 9 iulie 2018 12:59:33
Problema Divk Scor 90
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.52 kb

#include <iostream>
#include <fstream>

using namespace std;

int frecventa[100002];

int main() {
    ifstream f("divk.in");
    ofstream g("divk.out");
    int n,a,b,k,sir[500002],contor=0;
    sir[0]=0;
    f>>n>>k>>a>>b;
    for(int i=1;i<=n;i++) {
        f>>sir[i];
        sir[i]=(sir[i-1]+sir[i]%k)%k;
        if(i>=a) {
            frecventa[sir[i-a]]++;
        }
        if(i>=b+1) {
            frecventa[sir[i-b-1]]--;
        }
        contor=contor+frecventa[sir[i]];
    }
    g<<contor;
    f.close();
    g.close();
}