Cod sursa(job #2254494)

Utilizator ciutanpCiuta Andrei Calin ciutanp Data 5 octombrie 2018 14:48:38
Problema Divk Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.48 kb
#include<bits/stdc++.h>

using namespace std;

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

long long n,k,a,b,sol;
long long dp[500005];
int fr[100005];
int main()
{
    f>>n>>k>>a>>b;
    for(int i=1;i<=n;++i)
    {
        int x;
        f>>x;
        dp[i]=x+dp[i-1];
    }
    for(int i=1;i<=n;++i)
    {
        if(i-b-1>=0)
            fr[dp[i-b-1]%k]--;
        if(i-a>=0)
            fr[dp[i-a]%k]++;
        sol+=fr[dp[i]%k];
    }
    g<<sol;
}