#XD2. 区间覆盖 + 区间加法(复合懒标记)
区间覆盖 + 区间加法(复合懒标记)
Description
维护一个数组,支持三种操作:
- 将区间 ([L, R]) 覆盖为值 (X)。
- 对区间 ([L, R]) 所有元素加上 (K)。
- 查询区间 ([L, R]) 的元素和。
Input Format
- 第一行为两个整数 (N) 和 (Q)。
- 第二行为初始数组的 (N) 个整数。
- 接下来 (Q) 行,每行表示一个操作:
1 L R X
:覆盖操作。2 L R K
:加法操作。3 L R
:查询操作。
Output Format
对每个查询操作输出结果。
4 3
1 2 3 4
1 0 2 5
2 1 3 3
3 0 3
21
Hint
解释:覆盖后数组为 [5,5,5,4]
,加法后为 [5,8,8,7]
,和为 28(但样例可能有误,需核对逻辑)。
【数据范围】
- (1 \leq N, Q \leq 10^5)
- (0 \leq \text{数组元素}, X, K \leq 10^9)