Pagini recente » Cod sursa (job #275200) | Cod sursa (job #1973763) | Cod sursa (job #1252344) | Cod sursa (job #1241163) | Cod sursa (job #1424355)
#include<fstream>
#include<vector>
#include<algorithm>
#include<cstring>
using namespace std;
typedef int64_t var;
ifstream fin("divk.in");
ofstream fout("divk.out");
#define MAXN 500002
var V[MAXN];
var n, k;
var Count[100000];
var SUM[MAXN];
var Solve(var a) {
memset(Count, 0, sizeof(Count));
Count[0] = 1;
var sol = 0;
for(var i=a, j=1; i<=n; i++, j++) {
sol += Count[SUM[i]%k];
Count[SUM[j]%k]++;
}
return sol;
}
int main() {
var a, b;
fin>>n>>k>>a>>b;
for(var i=1; i<=n; i++) {
fin>>SUM[i];
SUM[i] += SUM[i-1];
}
fout << Solve(a) - Solve(b+1);
return 0;
}