Pagini recente » Profil vsantu | Diferente pentru problema/galerie intre reviziile 8 si 23 | Cod sursa (job #2984378) | Borderou de evaluare (job #1363862) | Cod sursa (job #3202792)
#include <fstream>
#include <cmath>
#define ll long long
using namespace std;
ifstream fin("divk.in");
ofstream fout("divk.out");
int n,k,a,b,S[500001],M[500001],x,dr=0,st=0;
ll db=0;
int main()
{
fin>>n>>k>>a>>b;
fin>>x;
S[1]=x;
M[1]=S[1]%k;
for(int i=2;i<=n;i++)
{
fin>>x;
S[i]=S[i-1]+x; M[i]=S[i]%k;
}
for(int i=0;i<=n;i++)
{
for(int j=i+1;j<=n;j++)
{
if(M[i]==M[j] && (j-i)<=b && (j-i)>=a)
++db;
}
}
fout<<db;
}