Cod sursa(job #1966642)

Utilizator vlasiuflaviusVlasiu Flavius vlasiuflavius Data 15 aprilie 2017 14:18:55
Problema Divk Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.48 kb
#include <fstream>
using namespace std;
ofstream fout("divk.out");
ifstream fin ("divk.in");
long long rsp;
int fv[100005],v[500005];
int n,k,a,b,i;
int main()
{
    fin>>n>>k>>a>>b;
    for( i = 1 ; i <= n ; i++ )
    {
        fin>>v[ i ];
        v[ i ] = ( v[ i ] + v[ i - 1 ] ) % k;
        if( i >= a )
        {
            fv[ v[ i - a ] ]++;
            rsp += fv[ v[ i ] ];
        }
        if( i >= b )
            fv[ v[ i - b ] ]--;
    }
    fout<<rsp;
}