Pagini recente » Cod sursa (job #1741333) | Cod sursa (job #696527) | Cod sursa (job #647552) | Cod sursa (job #889074) | Cod sursa (job #1455569)
#include<fstream>
using namespace std;
ifstream in("divk.in");
ofstream out("divk.out");
const int NMAX = 500005;
int v[NMAX],dp[NMAX],N,K,A,B;
void read()
{
in>>N>>K>>A>>B;
for(int i = 1 ; i <= N ; ++i){
in>>v[i];
v[i] = (v[i] + v[i-1]) % K;
}
in.close();
}
void solve()
{
long long rez = 0;
for(int i = 1 ; i <= N ; ++i){
if(i >= A)
dp[ v[ i - A] ] ++;
if( i > B)
dp[ v [ i - B - 1] ] --;
rez += dp[v[i]];
}
out<<rez;
}
int main()
{
read();
solve();
return 0;
}