Pagini recente » Cod sursa (job #2048874) | Cod sursa (job #1645246) | Cod sursa (job #1406738) | Cod sursa (job #1351837) | Cod sursa (job #3227966)
#include <iostream>
#include <fstream>
#include <vector>
using namespace std;
ifstream fin("divk.in");
ofstream fout("divk.out");
const int kmax=100000;
long long frekvencia[kmax+5];
vector<long long>v;
int main()
{
long long n,a,b,k,i,eredmeny;
fin>>n>>k>>a>>b;
v.resize(n+5);
v[0]=0;
for(int i=1;i<=n;i++){
fin>>v[i];
v[i]+=v[i-1];
}
eredmeny=0;
for(int i=0;i<=n;i++){
eredmeny+=frekvencia[v[i]%k];
if(i-a+1>=0) ++frekvencia[v[i-a+1]%k];
if(i-b>=0) --frekvencia[v[i-b]%k];
}
fout<<eredmeny;
return 0;
}