Cod sursa(job #1886528)

Utilizator adystar00Bunea Andrei adystar00 Data 20 februarie 2017 22:32:32
Problema Divk Scor 40
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.55 kb
#include <iostream>
#include <fstream>
using namespace std;
int v[500010],vc[100010];
int main()
{
    ifstream fin ("divk.in");
    ofstream fout ("divk.out");
    int n,k,a,b,i,suma=0,x;
    fin>>n>>k>>a>>b;
    for(i=1; i<=n; i++)
    {
        fin>>x;
        v[i]=v[i-1]+x;
        v[i]%=k;
    }
    vc[0]=1;
    for(i=1; i<=n; i++)
    {
        if(i>=a)
        {
            vc[v[i-a+1]]++;
            if(i>=b)
                vc[v[i-b]]--;
            suma=suma+vc[v[i]];

        }
    }
    fout<<suma;
    return 0;
}