Cod sursa(job #3202733)

Utilizator CreditKing69Bogdan Moldovan CreditKing69 Data 12 februarie 2024 11:09:48
Problema Divk Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.52 kb
#include <fstream>
#include <vector>

using namespace std;

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

long long n,a,b,k,nr=0,v[500001],f[500001];

int main()
{

    in>>n>>k>>a>>b;
    for(int i=1;i<=n;i++)
    {
        in>>v[i];
    }
    for(int i=1;i<=n;i++)
    {
        v[i]=v[i-1]+v[i];
        v[i]%=k;
    }
    for(int i=1;i<=n;i++)
    {
        if(i>=a)
            f[v[i-a]]++;
        nr+=f[v[i]];
        if(i>=b)
            f[v[i-b]]--;
    }
    out<<nr;
    return 0;
}