Pagini recente » Cod sursa (job #694300) | Cod sursa (job #289367) | Cod sursa (job #931218) | Cod sursa (job #478004) | Cod sursa (job #935682)
Cod sursa(job #935682)
#include <fstream>
using namespace std;
ifstream in("divk.in");
ofstream out ("divk.out");
int N,A,B,b,k,i,v[500100],d[500100],a[100100],f=1;
long long s;
int main()
{
in>>N>>k>>A>>B;
for(i=1;i<=N;i++)
{
in>>v[i];
v[i]=(v[i-1]+v[i]%k)%k;
}
for( i=0;i<=N-A;++i)
{
++b;
d[b]=i;
++a[v[d[b]]];
if(d[f]<i+A-B)
{
--a[v[d[f]]];
++f;
}
s=s+a[v[i+A]];
}
out<<s<<'\n';
return 0;
}