Cod sursa(job #1649915)

Utilizator isav_costinVlad Costin Andrei isav_costin Data 11 martie 2016 15:44:48
Problema Divk Scor 90
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.47 kb
#include <cstdio>
int s[5000001], nr[100000];
int main()
{
    freopen( "divk.in", "r", stdin );
    freopen( "divk.out", "w", stdout );
    int n, k, a, b, i, r, x, secv=0;
    scanf( "%d%d%d%d", &n, &k, &a, &b );
    for( i=1;i<=n;i++ )
    {
        scanf( "%d", &x );
        r=(s[i-1]+x)%k;
        s[i]=r;
        if( i-a>=0 )
            nr[s[i-a]]++;
        if( i-b-1>=0 )
            nr[s[i-b-1]]--;
        secv+=nr[r];
    }
    printf( "%d", secv );
    return 0;
}