Cod sursa(job #2258339)

Utilizator NashikAndrei Feodorov Nashik Data 11 octombrie 2018 11:32:37
Problema Divk Scor 10
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.52 kb
//#include <iostream>
#include <fstream>

using namespace std;
int sp[500005],f[100005];
int main()
{
    ifstream cin("divk.in");
    ofstream cout("divk.out");
    int n,k,a,b;
    cin>>n>>k>>a>>b;
    for(int i=1;i<=n;i++){
        int x;
        cin>>x;
        sp[i]=sp[i-1]+x;
        sp[i]%=k;
    }
    int sum=0;
    for(int i=1;i<=a;i++)
        f[sp[i]]++;
    for(int i=a+1;i<=n;i++){
        if(i>b){
            f[sp[i-b]]--;
        }
        sum+=f[sp[i]];
        f[sp[i]]++;
    }
    cout<<sum;
    return 0;
}