Cod sursa(job #1949804)

Utilizator LeVladzCiuperceanu Vlad LeVladz Data 2 aprilie 2017 13:32:19
Problema Divk Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.5 kb
#include <fstream>

using namespace std;

ifstream fin("divk.in");
ofstream fout("divk.out");

int n,k,a,b,i,x;
int v[500005],f[100005];
long long nr;

int main()
{
    fin >> n >> k >> a >> b;
    for (i=1; i<=n; i++)
    {
        fin >> x;
        v[i] = x%k;
    }
    for (i=2; i<=n; i++)
        v[i] = (v[i-1]+v[i])%k;
    for (i=a; i<=n; i++)
    {
        f[v[i-a]]++;
        if (i > b)
            f[v[i-b-1]]--;
        nr += f[v[i]];
    }
    fout << nr;
    return 0;
}