Cod sursa(job #1428366)

Utilizator crysstyanIacob Paul Cristian crysstyan Data 4 mai 2015 11:46:47
Problema Divk Scor 90
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.48 kb
#include <fstream>
#define NMAX 500001
#define NNMAX 100001

using namespace std;

ifstream f("divk.in");
ofstream g("divk.out");

int i, n, a, b, v[NMAX], k, dp[NMAX], rez=0;

int main()
{
    f>>n>>k>>a>>b;

    for (i=1; i<=n; ++i)
    {
        f>>v[i];
        v[i]=(v[i-1]+v[i])%k;
    }

   dp[0]=1;

    for (i=a; i<=n; ++i)
    {
        if (i-b>=1) dp[v[i-b-1]]--;
        rez+=dp[v[i]];
        dp[v[i-a+1]]++;
    }

    g<<rez<<'\n';
    return 0;
}