Cod sursa(job #2500520)

Utilizator mariamirabella2Bucur-Sabau Maria-Mirabela mariamirabella2 Data 28 noiembrie 2019 09:42:23
Problema Divk Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.47 kb
#include <fstream>

using namespace std;

ifstream cin("divk.in");
ofstream cout("divk.out");

long long v[500005],s[500005],k,a,b,n,cnt,x;

//in v retin cate sume am cu restul s[i-a]

int main()
{
    cin>>n>>k>>a>>b;
    for(int i=1;i<=n;i++){
        cin>>x;
        x%=k;
        s[i]=(s[i-1]+x)%k;
        if(i>=a){
            v[s[i-a]]++;
            if(i>b){
                v[s[i-b-1]]--;
            }
            cnt+=v[s[i]];
        }
    }

    cout<<cnt;
    return 0;
}