#P9137. 区间线性加区间最小值(Range Linear Add Range Min)

区间线性加区间最小值(Range Linear Add Range Min)

区间线性加区间最小值(Range Linear Add Range Min)

问题描述

给定一个长度为 N N 的整数序列 a0,a1,,aN1 a_0, a_1, \dots, a_{N-1}
处理 Q Q 个查询,类型如下:

  • 0 l r b c:对每个 i=l,l+1,,r1 i = l, l+1, \dots, r-1 ,执行 aiai+bi+c a_i \leftarrow a_i + b \cdot i + c
  • 1 l r:输出 mini[l,r)ai \min_{i \in [l, r)} a_i

约束条件

  • 1N,Q105 1 \leq N, Q \leq 10^5
  • ai<109 |a_i| < 10^9
  • 0l<rN 0 \leq l < r \leq N
  • b<100 |b| < 100
  • c<107 |c| < 10^7

输入

N QN\ Q
a0 a1  aN1a_0\ a_1\ \cdots\ a_{N-1}
Query₀
Query₁
:
QueryQ1_{Q-1}

5 7
1 2 3 4 5
1 0 5
0 2 4 -10 101
1 0 3
0 1 3 12 103
1 2 5
0 2 5 -14 105
1 0 5
1
1
5
1