Pagini recente » Borderou de evaluare (job #881123) | Cod sursa (job #474803) | Cod sursa (job #352257) | Cod sursa (job #1032912) | Cod sursa (job #3314682)
#include<fstream>
using namespace std; int sp[500001]; int main() { ifstream f("divk.in"); ofstream o("divk.out"); int n, k, a, b, x, i; long long r = 0; f >> n >> k >> a >> b; int fr[k]{}; for (i = 1; i <= n; i++) { f >> x; sp[i] = (sp[i - 1] + x) % k; if (i - a >= 0)++fr[sp[i - a]]; if (i - b - 1 >= 0)--fr[sp[i - b - 1]]; r += fr[sp[i]]; }o << r; }