编程题
### 问题描述 康康遇到了这样一个题: 维护一个动态数组 $s_1, s_2, \cdots, s_n$,数组的值是所有 $\lvert x \rvert \leq 10^9$ 的整数。支持两个操作: 1. 输入 $l, r, d$,对于所有 $l \leq i \leq r$,将 $s_i$ 修改为 $s_i + d$,注意 $d$ 可能是负数。 2. 输入 $l, r$,输出子数组 $s_l, \cdots, s_r$ 的字典序最小的后缀的起点位置。即,如果最小后缀是 $s_p, \cdots, s_r$,$(l \leq p \leq r)$,请输出 $p$。 ### 输入格式 第一行两个非负整数 $n, q$。 接下来一行包含 $n$ 个整数,表示初始时的数组。 接下来 $q$ 行,每行为 $1$ $l$ $r$ $d$ 或 $2$ $l$ $r$,分别表示两种操作。 ### 输出格式 对于所有的查询操作按顺序输出答案。 ### 样例输入 ``` 5 5 3 2 1 4 3 2 1 5 1 2 4 2 2 1 5 1 2 5 1 2 1 5 ``` ### 样例输出 ``` 3 5 1 ``` ### 评测数据规模 $1 \leq n \leq 10^5$,$1 \leq q \leq 10^4$,$1 \leq l \leq r \leq n$,$\lvert d \rvert \leq 1000$,$\lvert s_i \rvert \leq 10^7$。
查看答案
赣ICP备20007335号-2