Pagini recente » Cod sursa (job #343938) | Cod sursa (job #1779660) | Cod sursa (job #1364713) | Cod sursa (job #935308) | Cod sursa (job #2338506)
#include <fstream>
#define MAXN 500000
#define MAXM 100000
using namespace std;
ifstream fin( "divk.in" );
ofstream fout( "divk.out" );
int v[MAXN+5], f[MAXM+5];
int main()
{
int n, m, a, b;
fin>>n>>m>>a>>b;
for( int i=1;i<=n;i++ )
{
fin>>v[i];
v[i]=(v[i]+v[i-1])%m;
}
for( int i=a;i<=b;i++ )
f[v[i]]++;
int ans=0, st=a, dr=b;
for( int i=1;st<=n;i++ )
{
ans+=f[v[i]];
f[v[st]]--;
if( dr+1<=n )
f[v[dr+1]]++;
st++;
dr++;
}
fout<<ans;
return 0;
}