Cod sursa(job #1857975)

Utilizator valentinoMoldovan Rares valentino Data 26 ianuarie 2017 21:47:26
Problema Divk Scor 20
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.45 kb
#include <fstream>
using namespace std;

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

int n, s[500005], v[100005];

int main()
{
    int x, k, a, b, sol = 0;
    f >> n >> k >> a >> b;
    for(int i = 1; i <= n; ++i)
    {
        f >> x;
        s[i] = (s[i-1] + x) % k;
    }
    for(int i = a; i <= n; ++i)
    {
        v[s[i-a]]++;
        if(i > b) v[s[i - b + 1]]--;
        sol += v[s[i]];
    }
    g << sol << '\n';
}