Cod sursa(job #1218203)

Utilizator cojocarugabiReality cojocarugabi Data 9 august 2014 22:51:59
Problema Divk Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.43 kb
#include <fstream>
using namespace std;
#define nmax 500005
ifstream fi("divk.in");
ofstream fo("divk.out");
int S[nmax],V[nmax];
int main(void)
{
    int n,k,i,x,a,b;
    unsigned long long Sol=0;
    S[0]=0;
    for (fi>>n>>k>>a>>b,i=1;i<=n;fi>>x,S[i]=(S[i-1]+x)%k,++i);
    for (int i=1;i<=n;++i)
    {
        if (i-a>=0) ++V[S[i-a]];
        if (i-b>0)  --V[S[i-b-1]];
        Sol+=V[S[i]];
    }
    fo<<Sol<<"\n";
}