Pagini recente » Cod sursa (job #706715) | Cod sursa (job #1225395) | Cod sursa (job #2787671) | Cod sursa (job #1508088) | Cod sursa (job #529861)
Cod sursa(job #529861)
#include<fstream>
using namespace std;
void read();
void solve();
int n, k, a, b, v[500001], s[500001];
int main()
{
read();
solve();
return 0;
}
void read()
{
ifstream fin("divk.in");
fin >> n >> k >> a >> b;
for(int i = 1; i <= n; ++i)
{
fin >> v[i];
v[i] = (v[i-1] + v[i] ) % k;
}
fin.close();
}
void solve()
{
ofstream fout("divk.out");
long long nr = 0;
s[0] = 1;
for(int i = a; i <= n; ++i)
{
nr += s[ v[i] ];
s[ v[ i-a+1 ] ]++;
if( i >= b)
s[ v[i-b] ]--;
}
fout << nr;
fout.close();
}