Cod sursa(job #1669072)

Utilizator NicolaalexandraNicola Alexandra Mihaela Nicolaalexandra Data 30 martie 2016 12:32:01
Problema Divk Scor 40
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.65 kb
#include <fstream>

using namespace std;

int n,k,a,b,i,j,v[500001],secv,s,s2;

ifstream fin ("divk.in");

ofstream fout ("divk.out");

int main (){

    fin>>n>>k>>a>>b;
    for (i=1;i<=n;i++)
        fin>>v[i];

    for (i=1;i<=a;i++)
        s+=v[i];
    //fixam inceputul secventei;

    for (i=1;i<=n-a+1;i++){
        if (i != 1){
            s-=v[i-1];
            s+=v[i+a-1];
        }
        if (s % k == 0)
            secv++;
        s2 = s;
        for (j=i+a;j<=i+b-1 && j<=n;j++){
            s2+=v[j];
            if (s2 % k == 0)
                secv++;
        }
    }
    fout<<secv;

    return 0;
}