Pagini recente » Cod sursa (job #2719284) | Diferente pentru deque-si-aplicatii intre reviziile 16 si 140 | Cod sursa (job #731395) | Cod sursa (job #2067233)
#include<fstream>
using namespace std;
ifstream f("divk.in");
ofstream g("divk.out");
long long s[500010], i, j, x;
long long n , k , a , b , rest[100010]={1} , nr ;
int main()
{
f>>n>>k>>a>>b;
for(i=1 ; i<=n ; i++)
{
f>>x;
s[i]=s[i-1]+x;
}
if(s[a]%k==0)
nr++;
for( i=a+1;i<=n;i++)
{
if(i>b)
{
rest[s[i-b-1]%k]--;
}
rest[s[i-a]%k]++;
nr+=rest[s[i]%k];
}
g<<nr<<'\n';
}