A3929 「ROIR 2026 Day2」滑动窗口

暂无评定 传统题 ROIR(俄罗斯) 上传者
时间限制2000ms
内存限制512MiB
通过 / 提交0/0

A3929「ROIR 2026 Day2」滑动窗口

暂无评定 传统题 ROIR(俄罗斯) 上传者
时间限制2000ms
内存限制512MiB
通过 / 提交0/0

题目描述

译自 ROI Regional 2026 Day2 T3. Скользящие окна

给定一个长度为 nn 的数组 a1,a2,…,ana_1, a_2, \dots, a_n。

长度为 kk 的滑动窗口是指数组上所有连续长度为 kk 的子段,即 [ai,…,ai+k−1][a_i, \dots, a_{i+k-1}](ii 从 11 到数组长度 −k+1-k+1)。

需要回答 qq 个询问:对于给定的 l,r,kl, r, k,在子数组 [al,…,ar][a_l, \dots, a_r] 上,计算所有长度为 kk 的滑动窗口的最小值之和。

输入格式

第一行两个整数 n,qn, q (1≤n,q≤100000)(1 \leq n, q \leq 100000),表示数组长度和查询数量。

第二行 nn 个整数 a1,…,ana_1, \dots, a_n (1≤ai≤109)(1 \leq a_i \leq 10^9),表示数组元素。

接下来 qq 行,每行三个整数 li,ri,kil_i, r_i, k_i $(1 \leq l_i \leq r_i \leq n,\ 1 \leq k_i \leq r_i - l_i + 1)$,表示第 ii 个查询的左右端点和窗口长度。

输出格式

输出 qq 行,每行一个整数,表示对应查询的滑动窗口最小值之和。

6 3
4 6 1 2 5 3
2 5 2
2 4 1
1 6 6

4
9
1

数据范围与提示

详细子任务附加限制及分值如下表所示:

子任务 分值 附加限制 子任务依赖
11 66 n,q≤300n, q \leq 300
22 1212 n,q≤4000n, q \leq 4000 11
33 88 n,q≤10000n, q \leq 10000 1,21, 2
44 1111 n≤4000n \leq 4000
55 1010 所有查询的 kik_i 相同
66 1414 ai≤2a_i \leq 2
77 77 ai≤20a_i \leq 20 66
88 1515 所有查询 li=1, ri=nl_i = 1,\ r_i = n
99 1717 无附加限制 1∼81 \sim 8