Cod sursa(job #3365289)
| Utilizator | Data | 17 septembrie 2026 21:48:47 | |
|---|---|---|---|
| Problema | Divk | Scor | 100 |
| Compilator | cpp-64 | Status | done |
| Runda | Arhiva de probleme | Marime | 0.62 kb |
#include <iostream>
#include <cstdio>
using namespace std;
long long sp[500005];
long long frec[100005];
int main()
{
freopen("divk.in", "r", stdin);
freopen("divk.out", "w", stdout);
ios_base::sync_with_stdio(false);
cin.tie(NULL);
int n, a, b, k, x;
cin >> n >> k >> a >> b;
for (int i=1; i<=n; i++) {
cin >> x;
sp[i]=sp[i-1]+x;
}
long long cnt=0;
for (int i=a; i<=n; i++) {
frec[sp[i-a]%k]++;
if (i-b-1>=0) {
frec[sp[i-b-1]%k]--;
}
cnt+=frec[sp[i]%k];
}
cout << cnt;
return 0;
}
