Cod sursa(job #667451)

Utilizator anca1243Popescu Anca anca1243 Data 23 ianuarie 2012 10:03:27
Problema Divk Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.49 kb
#include <iostream>
#include <fstream>
using namespace std;
ifstream in("divk.in");
ofstream out("divk.out");
const int N=500001;
int s[N],f[N];
long long secv;
int main()
{
    int n,a,b,k,i;
    long x;
    in>>n>>k>>a>>b;
    //f[0]=1;
    for(i=1;i<=n;i++)
    {
        in>>x;
        x=x%k;
        s[i]=(s[i-1]+x)%k;
        if(i>b)
            f[s[i-b-1]]--;
        if(i>=a)
            f[s[i-a]]++;
        secv+=f[s[i]];
    }
    out<<secv;
    return 0;
}