Pagini recente » Cod sursa (job #2598463) | Cod sursa (job #2217335) | Cod sursa (job #2319654) | Cod sursa (job #2456595) | Cod sursa (job #1049408)
#include <iostream>
#include <fstream>
using namespace std;
ifstream fin ("divk.in");
ofstream fout ("divk.out");
const int N = 500001;
const int K = 100001;
long long n , k , a , b , r[N], nr[K], rez;
int main()
{
fin >> n >> k >> a >> b;
for (int i = 1; i <=n ; i++ ){
int x;
fin>>x;
r[i] = ( r[ i-1 ] + x ) % k ;
if ( i > b )
nr [ r [ i - b - 1 ] ] -- ;
if ( i >= a )
nr [ r [ i-a ] ] ++ ;
rez = rez + nr [ r[ i ] ] ;
}
fout << rez;
return 0;
}