Cod sursa(job #2258487)

Utilizator NashikAndrei Feodorov Nashik Data 11 octombrie 2018 15:41:21
Problema Divk Scor 90
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.66 kb
//#include <iostream>
#include <fstream>
using namespace std;
ifstream cin("divk.in");
ofstream cout("divk.out");
int n,k,nr1,nr2;
long long a[500005],nr;
int s[100005];
int main()
{
    int i,j,x;
    cin>>n>>k>>nr1>>nr2;
    for(i=1;i<=n;i++){
        cin>>x;
        a[i]=a[i-1]+x;
        if(i-nr1>=0)
            s[a[i-nr1]%k]++;
        if(i-nr2-1>=0)
            s[a[i-nr2-1]%k]--;
        if(i-nr1>=0)
            nr+=s[a[i]%k];
    }
    cout<<nr;
    return 0;
}

//8 4 9 8 2 9 2 9 9 4 7 8 6 9 5 6 4 7 7 8 9 9 9 6 9 9 8 7 6 7 7 7 9 7



//8 4 9 0 8 2 7 2 1 1 9 1 8 4 7 8 0 6 7 2 2 0 3 6 4 7 7 0 8 4 5 9 2 7 6 4 5 9 6 1 1 0 7 6 7 7 7 9 4 3