Cod sursa(job #2476262)

Utilizator PredescuSebastianIonPredescu Sebastian Ion PredescuSebastianIon Data 18 octombrie 2019 15:55:26
Problema Divk Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.51 kb
#include <fstream>

using namespace std;
ifstream f("divk.in");
ofstream g("divk.out");
int s[500001],sol[500001];
int n,a,b,k,x,i;
long long solutie;
int main()
{
    f>>n>>k>>a>>b;
    for(i=1; i<=n; i++)
    {
        f>>x;
        s[i]=(s[i-1]+x)%k;
    }
    for(i=a; i<b; i++)
    {
        sol[s[i-a]]++;
        solutie+=sol[s[i]];
    }
    for(; i<=n; i++)
    {
        sol[s[i-a]]++;
        solutie+=sol[s[i]];
        sol[s[i-b]]--;
    }
    g<<solutie<<'\n';
    return 0;
}