Cod sursa(job #1574973)

Utilizator PaulStighiStiegelbauer Paul-Alexandru PaulStighi Data 20 ianuarie 2016 23:11:29
Problema Divk Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.45 kb
#include<fstream>
#define NMax 500005
using namespace std;
ifstream fin("divk.in");
ofstream fout("divk.out");

int N,K,A,B,Sol;
int S[NMax],R[NMax/5];

int main()
{
    fin>>N>>K>>A>>B;

    for(int i=1;i<=N;++i)
    {
        fin>>S[i];
        S[i]=(S[i]+S[i-1])%K;
        if(i>=A)    ++R[S[i-A]];
        if(i>B) --R[i-B-1];

        Sol+=R[S[i]];
    }
    fout<<Sol<<"\n";

    fin.close();
    fout.close();
    return 0;
}